XML Nedir
XML kelimesi "eXtensible Markup Language" tamlamanın kısaltılmışıdır.
XML dili 1996`da W3C tarafından yazımı ve anlaşılması kolay olması amacıyla yapılmaya başlanmıştır,
1998`de yapılan XML projesi tamamlanmıştır. Şuandaki kullanım amacı iki farklı türde RDBMS(Veri Tabanı)
kullanan web application`lar için aradaki iletişimi sağlar. Örnek olarak farklı veri tabanı türleri kullanan "A" sitesinden
"B" sitesine bir request gönderirken önce "A" sitesi "x" dilinde bir request yollar "B" sitesi requesti "y" diline parse ederek okur

XML Enternal Entity Nedir
Web Application"un veriyi okurken "BurpSuite" gibi araçlarla kötü niyetli bir hackerin verinin arasına
zararlı kodlarını yazarak sitede "Command Exucution" gibi zafiyetleri exploit edebilir. Fakat XXE zafiyeti genellikle serverdaki /etc/passwd gibi önemli dosya içeriklerini okumak veya download etmek için kulanılıyor.

XXE Exploit İşlemi
Ben Portswigger"in ücretsiz labını kullanıcağım exploit içinde burpsuite yeterlidir.
Aşşağıda gördüğünüz resimde gelen HTTP isteğinde en aşşağıda XML kodlarına kendi DOCTYPE kodlarımızı
yerleştirip "etc/passwd" dosyasının içeriğğğini okumaya çalışıcaz

Şİmdi ""XML kodumuzu yazalım

Yukarıda gördüğünüz payloadın içerisinde "cagir" değerini "file:///etc/passwd" dosya değerine
eşitledik şimdi "cagir" değerimizi çağırarak dosyadaki şifreleri görelim

Dosya içeriği:


Out Of Band XXE
<font size="4"><font color="White">İnternette heryerde güvenlik oldupu gibi bu zafiyet içinde bir güvenlik
önlemi almışlar firewall gibisinden önlemler var bunları bypass etmek için de bir yol var bu sefer
direkt olarak cagir değerini değil kendi sitemizdeki .dtd dosyasının içindeki bir değeri hedef sitenin
"file::///etc/passwd" dosyasına atayıp değeride bi önceki başlıktaki cagir değerine atayacağız
böylelikle cagir değerini çağırdığımızda firewall neleri görmek istediğmizi bulamadan server veriyi parse etmek
isteyececk bizde parse işlemi sırasında veriyi okuyabileceğiz
www.hackerinsitesi.com/xxe.dtd içeriği bu şekilde olucaktır
<div style="margin:20px; margin-top:5px"> Kod: