程式邏輯問題

2022-08-31 02:18:10 字數 1082 閱讀 8662

進去一看

沒什麼奇特的地方,兩個輸入框乙個提交

不多說,流程走一遍,先是看原始碼再抓個包

原始碼中提到了給index.text

點進去qio一哈,發現時列印

flag

的過程

抓包的話沒遇到上面奇特的資訊

算了,先分析原始碼吧

關鍵點在,如果($row[pw]) && (!strcasecmp($pass, $row[pw])就列印flag,

row是自定義的乙個函式mysql_fetch_array($query, mysql_assoc)

mysql-fetch-array函式:

這裡的意思是去query指標的關聯陣列,然後再看$query=mysql_query($sql)

mysql-query函式:執行一條mysql查詢。。。這裡的意思是資料庫裡得有password和user。。。。,但是如果我們直接讓sql有乙個值而不去訪問資料庫就可以輕而易舉的繞過了

根據原始碼

所以這裡使用單引號閉合

直接對它給出的username後面進行注入username' union select md5(1)#

使用union select將md5(1)的值直接給sql然後用#注釋掉後面的內容

再將password的值改為1(不能為空)就得到flag了

程式邏輯問題 實驗吧

題目提示是繞過,本題考點 sql語句注入 初了解 可略 mysql fetch array 中可選的第二個引數 result type 是乙個常量,可以接受以下值 mysql assoc,mysql num 和 mysql both。本特性是 php 3.0.7 起新加的。本引數的預設值是 mysq...

程式邏輯問題 實驗吧

今天有點時間就多寫幾篇解題思路吧,希望能夠幫助到那些需要幫助的人,所有的wp都是以一題一篇的形式寫出 主要是為了能夠讓讀者更好的閱讀以及查詢,希望你們不要責怪哦!共勉!永遠愛你們的 新寶寶 難度 中 參與人數 8729人 get flag 2738人 答題人數 2840人 解題通過率 96 繞過 解...

實驗吧 程式邏輯問題

右鍵檢視原始碼 進入後看到 根據原始碼可以看到兩處特別需要重視的地方。很明顯1處sql語句存在注入漏洞,但是密碼欄不能通過一般的注入來繞過,但是可以發現,只要滿足了 row pw strcasecmp pass,row pw 就可以拿到flag,也就是說,我們輸入的 pass與從資料庫取出來的pw一...