CTF web 201808

來源:互聯網
上載者:User

標籤:strlen()   判斷   嚴格   1.9   pass   網管   art   問題   電腦   

實驗吧--天網管理系統

考察點:md5特性、還原序列化漏洞,php布爾弱類型

查看源碼,發現

表示username的md5值==0,這裡利用了md5的一個漏洞,凡是0e開頭的字串會被解釋為0,百度一下即可

s878926199a0e545993274517709034328855841020s155964671a0e342768416822451524974117254469s214587387a0e848240448830537924465865611904s214587387a0e848240448830537924465865611904s878926199a0e545993274517709034328855841020

得到新連結/user.php?fame=hjkleffifer

這是一個還原序列化問題,根據提示,可能跟布爾值有關,

bool的true和任一字元串弱類型相等 


所以構造的user(bool)和password(bool)的值為true即可。

1 <?php2 $payload = array(‘user‘=>true,‘pass‘ => true);3 echo serialize($payload);4 ?>

得到結果:

a:2:{s:4:"user";b:1;s:4:"pass";b:1;}

將其作為password,即可得到flag

 

 實驗吧--Once More

發現代碼:

<?phpif (isset ($_GET[‘password‘])) {    if (ereg ("^[a-zA-Z0-9]+$", $_GET[‘password‘]) === FALSE)    {        echo ‘<p>You password must be alphanumeric</p>‘;    }    else if (strlen($_GET[‘password‘]) < 8 && $_GET[‘password‘] > 9999999)    {        if (strpos ($_GET[‘password‘], ‘*-*‘) !== FALSE)        {            die(‘Flag: ‘ . $flag);        }        else        {            echo(‘<p>*-* have not been found</p>‘);        }    }    else    {        echo ‘<p>Invalid password</p>‘;    }}?>

查看代碼發現,首先ereg判斷password的值是不是數字或字母,繼續strlen()限制了長度小於8並且大小必須大於9999999,繼續strpos()對password進行匹配,必須含有*-*,最終才輸出flag

ereg函數存在NULL截斷漏洞,導致了正則過濾被繞過,所以可以使用%00截斷正則匹配。對於另一個難題可以使用科學計數法表示,計算機或電腦表達10的的冪是一般是e,也就是1.99714e13=19971400000000,所以構造1e8即100000000 > 9999999,再加上*-*。於是乎構造password=1e8%00*-*,成功得到答案

方法二:直接將url改為http://ctf5.shiyanbar.com/web/more.php?password[]

因為在這裡如果 $_GET[‘password’]為數組,則傳回值為NULL ,而在嚴格比較下,null不等於false

附:php類型比較表  http://php.net/manual/zh/types.comparisons.php

  php函數漏洞集合  75200157

CTF web 201808

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.