Selam müridler Adsl kotamın sınırsız yaptım.. Bu bulmuş olduğum dkümanı sizlerle paylaşıyorum bir zat kendim araştırdım... Ve sizlere sunuyorum ida ediyoruz müridler herkes sQL ğrenecek :)XPath enjeksiyonu, kullanıcı kaynaklı girdilerden Xpath sorguları oluşturan web sitelerini smürmek için kullanılan bir tekniktir. Xpath 1.0 bir XML dkümanının parçalarını işaret etmek için kullanılabilir. Doğrudan uygulama tarafından bir XML dkümanını sorgulamak için kullanılabildiği gibi, XSTL dkümanının XML dkümanına dnüşümü veya XML dkümanına Xquery uygulanması gibi daha büyük bir işlemin parçası olarak da kullanılabilir. Xpath'in szdizimi bir SQL sorgusunu andırır, ve aslında, Xpath kullanarak bir xml dkümanında SQL benzeri sorgular oluşturmak mümkündür. rneğin, kullanıcı isimli bir elemanı olan bir XML dkümanı olsun, ve bütün bu kullanıcıların isim, parola ve hesap isimli 3 tane alt elemanı olsun. Takip eden Xpath ifadesi "jsmith" isimli ve "Demo1234" parolalı kullanıcının hesap numarasını verir. string(//user /hesap/text Eğer bir uygulama, Xpath sorgusunu yürütme esnasında oluşturuyorsa, sorguya güvenli olmayan kullanıcı girdisi gmerek sorguya veri enjekte edebilir ve yeni oluşan sorgu programcının isteğinin dışında çalışabilir. rnek Düşünün ki bir web uygulaması bir XML dkümanına sorgu yapmak için Xpath kullanıyor ve ismi ve parolası girilen bir kullanıcının hesap numarasını getiriyor. Bu uygulama bu değerleri doğrudan Xpath sorgusunun içine gmebilir ve güvenlik açığı oluşturabilir. İşte bir rnek XmlDocument XmlDoc = new XmlDocument ;XmlDoc. Load ; XPathNavigator nav = XmlDoc. CreateNavigator ;XPathExpression expr = nav. Compile("string(//kullanıcı /account/text "); String account=Convert. ToString(nav. Evaluate ; if else Bu kod kullanıldığında, bir saldırgan Xpath ifadeleri enjekte edebilir ve, rneğin, takip eden değeri kullanıcı adı olarak sağlayabilir. ' or 1=1 or ''=' Bu orjinal Xpath in anlamının değişmesine, ve her zaman XML dkümanındaki ilk hesap numarasının dnmesine sebep olur. Bu durumda sorgu, string(//kullanıcı /hesap/text Bu, , şununla eşdeğerdir: string(//kullanıcı/hesap/text ve ilk //kullanıcı/hesap/text rneğini dndürür. Bu yüzden, saldırı, doğru kullanıcı adı ve parolası girmediği halde saldırganı sisteme sokar .