本文最后更新于:1 年前
如来十三掌 1 2 3 4 5 6 7 8 9 10 11 12 13 14 下载文件得到 夜哆悉諳多苦奢陀奢諦冥神哆盧穆皤三侄三即諸諳即冥迦冥隸數顛耶迦奢若 吉怯陀諳怖奢智侄諸若奢數菩奢集遠俱老竟寫明奢若梵等盧皤豆蒙密離怯婆 皤礙他哆提哆多缽以南哆心曰姪罰蒙呐神。舍切真怯勝呐得俱沙罰娑是怯遠 得呐數罰輸哆遠薩得槃漫夢盧皤亦醯呐娑皤瑟輸諳尼摩罰薩冥大倒參夢侄阿 心罰等奢大度地冥殿皤沙蘇輸奢恐豆侄得罰提哆伽諳沙楞缽三死怯摩大蘇者 數一遮前面得到的信息要加上佛曰: 用与佛论禅解密得到: MzkuM3gvMUAwnzuvn3cgozMlMTuvqzAenJchMUAeqzWenzEmLJW9再根据提示用rot13解密得到: ZmxhZ3tiZHNjamhia3ptbmZyZGhidmNraWpuZHNrdmJramRzYWJ9 再用base64解密得到flag flag{bdscjhbkzmnfrdhbvckijndskvbkjdsab}
give_you_flag 1 2 3 4 5 6 7 下载文件得到一张图片,打开一看是动图 想到用stagesolve一帧一帧的看 得到一张残缺的二维码图片 补齐之后扫码得到flag
stegano 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 下载文件打开是pdf文件,全选文件复制到新建text中 发现顶部有BABA的东西,这里应该就是flag 想想怎么解码 就两个字母,首先想到的是敲击码 但是不对,又想到摩斯密码也是两个 尝试一下第一个 -表示B .表示A 得到字母C 手动替换 是不可能的 用txt把A 全部替换为. 把B 全部替换为- 解码得到: CONGRATULATIONS,FLAG:1 NV151BL3M3554G3 根据提示再替换大小写 flag{1 nv151bl3m3554g3}
坚持60s 1 2 3 4 5 6 7 下载文件得到 jar文件,打开发现是个游戏。 用上下左右控制发现坚持60 s比较困难, 用 jd-gui工具打开,搜索flag 在cn.bjsxt.plane.PlaneGameFrame中得到 flag{RGFqaURhbGlfSmlud2F uQ2hpamk=} 猜测是base64编码 解码得到flag{DajiDali_JinwanChiji}
gif 下载文件得到黑白图片,猜测是二进制 写python脚本转化
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 flag_dic = "" white = open (r"D:\攻防世界\Misc\gif\gif\0.jpg" ,"rb" ).read() black = open (r"D:\攻防世界\Misc\gif\gif\1.jpg" ,"rb" ).read() for i in range (104 ): with open (r"D:\攻防世界\Misc\gif\gif\%d.jpg" %i,"rb" ) as f: if f.read() == white: flag_dic += "0" else : flag_dic += "1" 张图片的颜色,并给白色附值为0 ,黑色赋值为1 flag = "" for i in range (len (flag_dic)//8 ): flag += chr (int (flag_dic[i*8 :(i+1 )*8 ],2 )) print (flag)
运行脚本得到flag{FuN_giF}
掀桌子 观察到里面所有数据均为16进制,考虑到ASCII码,两个数转化为一个字节, 注意到2个数大于128进制,但ASCII是0-127,所以进行取余操作。 写python脚本
1 2 3 4 5 6 flag = ''s ='c8 e9 aca0 c6 f2 e5 f3 e8 c4 efe7 a1 a0 d4 e8 e5 a0 e6 ece1 e7 a0 e9 f3 baa0 e8 eafae3 f9 e4 eafae2 eae4 e3 eaebfaebe3 f5 e7 e9 f3 e4 e3 e8 eaf9 eaf3 e2 e4 e6 f2 'l = len(s)//2 for i in range(l): flag += chr(int(s[i*2 :(i+1 )*2 ], 16 ) % 128 )print (flag, end='')
运行得到Hi, FreshDog! The flag is: hjzcydjzbjdcjkzkcugisdchjyjsbdfr
ext3 1 2 3 4 5 这个关于linux的暂时不太会,在网上看大佬题解,不用linux也能做,用 Winhex 打开搜索flag ,然后用360 压缩,打开flag .txt 得到一个base64的编码: ZmxhZ3tzYWpiY2lienNrampjbmJoc2J2Y2pianN6Y3N6Ymt6an0= 解码得到lag{sajbcibzskjjcnbhsbvcjbjszcszbkzj}
SimpleRAR 下载得到一个rar压缩包,解压得到一个flag.txt,但是flag不在这。 用WinHex打开,发现一个secret.png文件,查询rar的文件头,把7A改为74 如下图:
rar的知识点:
再解压得到一个图片,用stagsolve打开,点向左的按钮,得到半张二维码,再用Analyse中的Frame Browser ,发现有两张图片,保存第二章,用相同的方法,得到另半张,再用画图工具补全二维码,我这里用的是电脑自带的3D画图,感觉挺好用的,得到flag 二维码如下图:
base64stego 下载得到一个压缩包,打开有个txt文件,需要密码 用WinHex打开 压缩源文件目录区: 50 4B 01 02:目录中文件文件头标记 3F 00:压缩使用的 pkware 版本 14 00:解压文件所需 pkware 版本 00 00:全局方式位标记(有无加密,这个更改这里进行伪加密,改为09 00打开就会提示有密码了) 压缩源文件目录结束标志 :50 4B 05 06:目录结束标记 把09 00改写成00 00就可以成功打开文件了 根据base64隐写 在网上查看大佬脚本(自己还不会写)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 # -*- coding: cp936 -*- import base64 b64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' with open ('C:\\Users\\zzh\Desktop\\base64\\stego.txt' , 'rb' ) as f: bin_str = '' for line in f.readlines (): stegb64 = str (line, "utf-8" ).strip ("\n" ) rowb64 = str (base64.b64encode (base64.b64decode (stegb64)), "utf-8" ).strip ("\n" ) offset = abs (b64chars.index (stegb64.replace ('=' ,'' )[-1 ])-b64chars.index (rowb64.replace ('=' ,'' )[-1 ])) equalnum = stegb64.count ('=' ) #no equalnum no offset if equalnum: bin_str += bin (offset)[2 :].zfill (equalnum * 2 ) b='' .join ([chr (int (bin_str[i:i + 8 ], 2 )) for i in range (0 , len (bin_str), 8 )]) #8 位一组 data="" m="flag{" +b+"}" m = m.replace ("\x00" , "" ) print (m)
运行得到flag{Base_sixty_four_point_five}