# BrowExt - ClickJacking {{#include ../../banners/hacktricks-training.md}} ## Temel Bilgiler Bu sayfa, bir Tarayıcı uzantısındaki ClickJacking açığını kötüye kullanacak.\ ClickJacking'in ne olduğunu bilmiyorsanız kontrol edin: {{#ref}} ../clickjacking.md {{#endref}} Uzantılar, **`manifest.json`** dosyasını içerir ve bu JSON dosyasında `web_accessible_resources` alanı vardır. İşte [Chrome belgelerinde](https://developer.chrome.com/extensions/manifest/web_accessible_resources) bununla ilgili söylenenler: > Bu kaynaklar, **`chrome-extension://[PACKAGE ID]/[PATH]`** URL'si aracılığıyla bir web sayfasında mevcut olacaktır; bu, **`extension.getURL method`** ile oluşturulabilir. Beyaz listeye alınmış kaynaklar, uygun CORS başlıkları ile sunulur, bu nedenle XHR gibi mekanizmalar aracılığıyla erişilebilir.[1](https://blog.lizzie.io/clickjacking-privacy-badger.html#fn.1) Bir tarayıcı uzantısındaki **`web_accessible_resources`**, yalnızca web üzerinden erişilebilir değildir; aynı zamanda uzantının doğal ayrıcalıklarıyla da çalışır. Bu, onların şunları yapabilme yeteneğine sahip olduğu anlamına gelir: - Uzantının durumunu değiştirmek - Ek kaynaklar yüklemek - Tarayıcı ile belirli bir ölçüde etkileşimde bulunmak Ancak, bu özellik bir güvenlik riski taşır. Eğer **`web_accessible_resources`** içindeki bir kaynak önemli bir işlevselliğe sahipse, bir saldırgan bu kaynağı dış bir web sayfasına gömebilir. Bu sayfayı ziyaret eden dikkatsiz kullanıcılar, bu gömülü kaynağı istemeden etkinleştirebilir. Böyle bir etkinleştirme, uzantının kaynaklarının izinlerine ve yeteneklerine bağlı olarak istenmeyen sonuçlara yol açabilir. ## PrivacyBadger Örneği PrivacyBadger uzantısında, `skin/` dizininin aşağıdaki şekilde `web_accessible_resources` olarak tanımlanmasıyla ilgili bir güvenlik açığı tespit edilmiştir (Orijinal [blog yazısını](https://blog.lizzie.io/clickjacking-privacy-badger.html) kontrol edin): ```json "web_accessible_resources": [ "skin/*", "icons/*" ] ``` Bu yapılandırma, potansiyel bir güvenlik sorununa yol açtı. Özellikle, tarayıcıdaki PrivacyBadger simgesi ile etkileşimde bulunulduğunda render edilen `skin/popup.html` dosyası, bir `iframe` içinde gömülebilir. Bu gömme, kullanıcıları "Bu Web Sitesi için PrivacyBadger'ı Devre Dışı Bırak" butonuna yanlışlıkla tıklamaya kandırmak için sömürülebilir. Böyle bir eylem, PrivacyBadger korumasını devre dışı bırakarak kullanıcının gizliliğini tehlikeye atar ve kullanıcıyı artan izlemeye maruz bırakabilir. Bu istismarın görsel bir gösterimi, [**https://blog.lizzie.io/clickjacking-privacy-badger/badger-fade.webm**](https://blog.lizzie.io/clickjacking-privacy-badger/badger-fade.webm) adresinde sağlanan bir ClickJacking video örneğinde görülebilir. Bu güvenlik açığını gidermek için basit bir çözüm uygulandı: `/skin/*`'in `web_accessible_resources` listesinden kaldırılması. Bu değişiklik, `skin/` dizininin içeriğinin web erişilebilir kaynaklar aracılığıyla erişilemez veya manipüle edilemez olmasını sağlayarak riski etkili bir şekilde azalttı. Düzeltme kolaydı: **`web_accessible_resources`'dan `/skin/*`'i kaldırın**. ### PoC ```html