比賽信息
比賽地址:Buuctf靶場
我只想出手把手教程,希望大家能學會然后自己也成為ctf大佬,再來帶帶我QWQ
foremost分離一下文件,發現有rar用軟件跑一下有了密碼
flag{6fe99a5d03fb01f833ec3caa80358fa3}
下載文件,發現有一個沒加密和加密文件,發現它是偽加密
2處不一樣,然后修改成00,就可以解壓了發現
這個圖片其實是jpg,然后發現沒有用,然后打開txt看到佛曰
flag{w0_fo_ci_Be1}
foremost,分離一下發現有rar
然后軟件找密碼就有了flag
flag{d72e5a671aa50fa5f400e5d10eedeaa5}
他說不用爆破,我覺得是很簡單密碼,然后試一下他的用戶名,然后成了,反復多次發現是套娃,上網找腳本
#Python3.7大佬超級好用的腳本
import zipfile
name = 'hW1ES89jF'
while True:
fz = zipfile.ZipFile(name + '.tar.gz', 'r')
fz.extractall(pwd=bytes(name, 'utf-8'))
name = fz.filelist[0].filename[0:9]
fz.close()
方便的不行
BJD{wow_you_can_rea11y_dance}
發現文件里面既然有txt文件,然后該一個后綴zip,進入路徑找到了flag
flag{M9eVfi2Pcs#}
解壓文件,發現有密碼跑一下得到密碼解壓圖片
flag{Wadf_123}
發現我png格式改后綴名,在winhex最后發現了flag
flag{i_am_fl@g}
看來半天沒找到,最后在點贊中找到了出題人
http://blog.sina.com.cn/s/blog_bb4702370102w4oa.html
很大腦洞的題目由於有些賬號被封禁
flag{31010419920831481363542021127}
ios 使用fore分離
得到4個東西 進入rar,打開壓縮包運行flag.exe就生成了一個flag
Flag{379:7b758:g7dfe7f19:9464f:4g9231}
首先解壓文件,發現是圖片,使用fore分離得到了rar用破解密碼軟件跑
然后打開txt發現是雜亂的字符,就使用查重復字碼以下腳本
# gakki_exp.py
# Author : imagin
alphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()_+- ={}[]"
f = open("flag.txt", "r")
data = f.read()
result = {d:0 for d in alphabet}
def sort_by_value(d):
items = d.items()
backitems = [[v[1],v[0]] for v in items]
backitems.sort(reverse=True)
return [ backitems[i][1] for i in range(0,len(backitems))]
for d in data:
for alpha in alphabet:
if d == alpha:
result[alpha] = result[alpha] + 1
print(sort_by_value(result))
flag{gaki_IsMyw1fe}
解壓文件,然后用notepad,用插件轉換成ascii,發現是rar文件
爆破一下獲得一個文件,然后放進winhex里面發現文件頭錯誤
修改一下
flag{57cd4cfd4e07505b98048ca106132125}
解壓文件繞后給沒有后綴名的文件加上.jpg就是漫長的拼圖了
BASE Family Bucket ??? 85->64->85->13->16->32
然后看樣子base85不可能,所以換一下反過來是base32->base16->rot13->base85->base64->base85的順序解密得到壓縮包密碼
ThisIsSecret!233
flag{Qr_Is_MeAn1nGfuL}
以為是base64,用note轉碼發現是亂碼,看起來不是,然后百度一下發現有一種base64隱寫術
# -*- coding: cp936 -*-
b64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
with open('flag.txt', 'rb') as f:
bin_str = ''
for line in f.readlines():
stegb64 = ''.join(line.split())
rowb64 = ''.join(stegb64.decode('base64').encode('base64').split())
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)
print ''.join([chr(int(bin_str[i:i + 8], 2)) for i in xrange(0, len(bin_str), 8)]) #8 位一組
GXY{fazhazhenhaoting}
解壓發現他的index里面有base32
可惜不是flag
在圖片中看到了密碼,沒有密鑰,就猜測是之前的假flag
試了N此成功了
suctf{U_F0und_1t}
這個研究的我心態爆炸,先說iso文件解壓,然后找不到flag,然后用發開壓縮包看見了一堆
可是解壓了沒有,后面發現,沒打開顯示隱藏文件,如果不知道怎么打開隱藏文件看這個文章
https://jingyan.baidu.com/article/574c5219cf48e86c8d9dc11a.html
起初以為,啟動一個就生成flag,然后發現沒有用,只生成都是ffff的文件
然后發現有個時間不一樣
然后打開文件,搜索flag,就找到了
flag{29a0vkrlek3eu10ue89yug9y4r0wdu10}
一看就是ook加密https://www.splitbrain.org/services/ook,破解一下
flag{welcome to CTF}
百度一下caesar是凱撒,就凱撒密碼破解一下
flag{flagiscaesar}
名字既然如此,看到了文件
腳本跑一下
# -*- coding: cp936 -*-
b64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
with open('flag.txt', 'rb') as f:
bin_str = ''
for line in f.readlines():
stegb64 = ''.join(line.split())
rowb64 = ''.join(stegb64.decode('base64').encode('base64').split())
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)
print ''.join([chr(int(bin_str[i:i + 8], 2)) for i in xrange(0, len(bin_str), 8)]) #8 位一組
ACTF{6aseb4_f33!}
打開文本始終找不到思路,看到大佬的提示
然后明白還有這種操作!!
fp = open('attachment.txt','r')
a = fp.readlines()
p = []
for i in a:
p.append(int(i))
s = ''
for i in p:
if i == 63:
a = '00'
elif i == 127:
a = '01'
elif i == 191:
a = '10'
elif i == 255:
a = '11'
s += a
import binascii
flag = ''
for i in range(0,len(s),8):
flag += chr(int(s[i:i+8],2))
flag = binascii.unhexlify(flag)
wp = open('flag.txt','wb')
wp.write(flag)
wp.close()
轉換之后打開txt
發現是zip,給你改個擴展名,發現有密碼,然后檢查一下發現是偽加密修改為00,打開文件知道看到最后知道是base64,然后N次,解碼成功拿到flag
flag{189ff9e5b743ae95f940a6ccc6dbd9ab}
解壓zip,然后看到還有加密的zip,用軟件破解得到密碼解壓,發現還是加密,是偽加密
修改一下09變成00之后,解壓
打開setup 打開一看發現是py,然后運行一下
看不懂,完后百度了一下知道了這是掩碼破解 格式是???.??
然后用軟件破解
flag{fkjabPqnLawhvuikfhgzyffj}
他說低頭,我低頭看着鍵盤,看見這些能組成3個字就是CTF
flag{CTF}
解壓打開,導出http,,發現都是圖片,百度才知道有這個exiftool找flag的辦法
summer@summer:~/桌面/cc/flag$ exiftool *|grep flag
XP Comment : 恭喜你!找到一半了,還有另一半哦!flag{ae58d0408e26e8f
這樣代碼找到一般,另外一半,找了半天才知道
tcp.stream eq 114
這里真的的人腦洞大無止境啊!!!
flag{ae58d0408e26e8f26a3c0589d23edeec}
打卡文件,剛開始以為是字頻,發現太少了,然后放進百度,發現是畫logo的密文????
flag{RCTF_HeyLogo}
屬性面板看到了盲文解密一下
wctf2020{y$0$u_f$1$n$d$_M$e$e$e$e$e}
分離一下發現沒有任何問題,屬性也沒有,然后打開winhex,在2張圖片的連接處找到了
base32解碼
flag{6f1797d4080b29b64da5897780463e30}
打開文件,文件–>導出文件–>http
看到這個我研究了半天,找到大佬才知道這是一個注入,先復制出來然后用
知道,就是取flag字段一個進行判斷從第一個開始判斷,從第一個框知道102>flag1>101
所以就是102,慢慢測試出來
102 108 97 103 123 52 55 101 100 98 56 51 48 48 101 100 53 102 57 98 50 56 102 99 53 52 98 48 100 48 57 101 99 100 101 102 55 125
轉為字符串得flag
flag{47edb8300ed5f9b28fc54b0d09ecdef7}
似乎有東西sublime打開,發現了是莫斯
HELL0FORUM
用binw和fore
都沒結果,最后在lsb,隱寫上面,下載腳本
#網上腳本#
太長了就省略
#用法#
$ python lsb.py
LSB steganogprahy. Hide files within least significant bits of images.
Usage:
lsb.py hide <img_file> <payload_file> <password>
lsb.py extract <stego_file> <out_file> <password>
lsb.py analyse <stego_file>
搞這個安裝了超級多的庫比如
pip install pycryptodome
pip install Crypto
pip install Pillow
pip install matplotlib
pip install numpy
最后用py2,輸入
E:\桌面\腳本庫>py lsb.py extract 1.png 1.txt 123456
[+] Image size: 500x500 pixels.
[+] Written extracted data to 1.txt.
因為是弱口令就密碼是123456
flag{jsy09-wytg5-wius8}
下載,解壓,使用fore分離,發現了000001.zip其實是apk,更換該后綴名.apk,安卓文件,apktool先通過這個編譯
apktool d 00001.apk
然后在zip方式打開,看到復制到dex2jar-2.0
d2j-dex2jar.bat classes.dex
jd-gui使用這個打開,就能看到flag
flag{25f991b27fcdc2f7a82a2b34386e81c4}
首先,下載,百度如何抓包,查端口,然后知道了可以用tcpdump
tcpdump -n -r nmapll.pcapng 'tcp[13] = 18' | awk '{print $3}'| sort -u
-n 不把 [網絡地址轉換](https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E5%9C%B0%E5%9D%80%E8%BD%AC%E6%8D%A2) 成名字;
-r 從指定的文件中讀取包(這些包一般通過-w選項產生);
awk ‘{print $3}’ 取第三為字符串
sort -u 拒絕重復
flag{21226318013306}
下載文件,然后解壓,發現文件有個png文件頭損壞。然后去看數據結構
修改7A到74,解壓圖片,在blue通道中看到二維碼
ci{v3erf_0tygidv2_fc0} 發現不是凱撒也不是柵欄~
接下來看看binwalk -e key.ftm
看到了有key.pcap
使用讀取usb數據
tshark -r key.pcap -T fields -e usb.capdata > usbdata.txt
得到一個txt用腳本跑
mappings = { 0x04:"A", 0x05:"B", 0x06:"C", 0x07:"D", 0x08:"E", 0x09:"F", 0x0A:"G", 0x0B:"H", 0x0C:"I", 0x0D:"J", 0x0E:"K", 0x0F:"L", 0x10:"M", 0x11:"N",0x12:"O", 0x13:"P", 0x14:"Q", 0x15:"R", 0x16:"S", 0x17:"T", 0x18:"U",0x19:"V", 0x1A:"W", 0x1B:"X", 0x1C:"Y", 0x1D:"Z", 0x1E:"1", 0x1F:"2", 0x20:"3", 0x21:"4", 0x22:"5", 0x23:"6", 0x24:"7", 0x25:"8", 0x26:"9", 0x27:"0", 0x28:"\n", 0x2a:"[DEL]", 0X2B:" ", 0x2C:" ", 0x2D:"-", 0x2E:"=", 0x2F:"[", 0x30:"]", 0x31:"\\", 0x32:"~", 0x33:";", 0x34:"'", 0x36:",", 0x37:"." }
nums = []
keys = open('usbdata.txt')
for line in keys:
if line[0]!='0' or line[1]!='0' or line[3]!='0' or line[4]!='0' or line[9]!='0' or line[10]!='0' or line[12]!='0' or line[13]!='0' or line[15]!='0' or line[16]!='0' or line[18]!='0' or line[19]!='0' or line[21]!='0' or line[22]!='0':
continue
nums.append(int(line[6:8],16))
keys.close()
output = ""
for n in nums:
if n == 0 :
continue
if n in mappings:
output += mappings[n]
else:
output += '[unknown]'
print 'output :\n' + output
得到key
output :
KEYXINAN
維吉尼亞密碼破解一下,在柵欄一下
ci{v3erf_0tygidv2_fc0}
key=XINAN
fa{i3eei_0llgvgn2_sc0}
柵欄
flag{vig3ne2e_is_c00l}
分離也出不來,fore和binw都失敗了,然后知道了可以用
tshark -r out.pcap -T fields -e data >out.txt
提取隱寫一堆看不懂,然后百度一下原來要刪除篩選一些,這是腳本
lines = open("out.txt",'rb').readlines()
files = open("out1.txt","wb")
for line in lines:
files.write(line.strip().decode('hex'))
files.close()
得到的結果還要往下面解base64這邊使用notepad++,插件轉換發現很多都重復了,使用腳本刪除重復的
a = open("out1.txt",'rb').readlines()
file1 = open("out2.txt",'wb')
for i in range(len(a)):
bb = a[i].strip()
if bb == a[i-1].strip():
continue
file1.write(bb+'\n')
然后轉換還有問題,多了一些沒用的東西刪除
然后用notepad++插件轉換成base64解碼,然后轉換zip就成功了拿到了gif然后搜索一下有什么隱寫,知道了一個這個identify
#identify -format “%T” flag.gif
“20”“50”“50”“20”“50”“50”“20”“50”“20”“50”“20”“20”“20”“50”“20”“20”“20”“20”“50”“50”“20”“50”“20”“50”“20”“50”“20”“50”“50”“50”“50”“50”“20”“20”“50”“50”“20”“20”“20”“50”“20”“50”“50”“50”“20”“50”“20”“20”“66”“66”
起初以為是二進制可是看到有66,打消,以為是莫斯,還是不對,最后又繞回了二級制
01101101 01000100 00110101 01011111 00110001 01110100
翻一下
m D 5 _ 1 t
mD5_1t
md5加密一下
flag{f0f1003afe4ae8ce4aa8e8487a8ab3b6}
下載文件,使用fore分離發現了又flag的zip
然后在wir到處對象-》html -》看到一個藍屏數據然后百度一下
似乎用這個辦法不行找到一個mimikatz,這個來找win密碼
privilege::debug
sekurlsa::minidump lsass.dmp
sekurlsa::logonpasswords full
進入模式
選擇文件
找密碼
* Username : Administrator
* Domain : WIN7
* Password : W3lc0meToD0g3
解壓
D0g3{3466b11de8894198af3636c5bd1efce2}
下載,然后一看這么多文件都是一樣大小,百度一下知道是ntfs隱寫流
ACTF{AAAds_nntfs_ffunn?}
下載導出文件-》html-》發現了zip。保存,然后,解壓,發現失敗,一看就發現是偽加密
,解壓,swp恢復一下,
在liunx中
pjy@admin:~/桌面/bb$ vim -r flag
pjy@admin:~/桌面/bb$ cat flag
flag{c5558bcf-26da-4f8b-b181-b61f3850b9e5}
下載打開zip然后前面算式解出來是7
7+NNULLULL,和 7NNULLULL,都不是
試了很久
2019456NNULLULL,
解壓看起來是什么密碼百度一下,發現是原來分離出來2張一樣的圖片是有用的,盲水印
在11里面,字屏爆破看看
也就只有11可以運行把
etaonrhisdluygwm
base64: QW8obWdIWT9pMkFSQWtRQjVfXiE/WSFTajBtcw==
base85: Ao(mgHY?i2ARAkQB5_^!?Y!Sj0ms 這一步還以為的柵欄
flag{have_a_good_day1}
base64:a2FuYmJyZ2doamx7emJfX19ffXZ0bGFsbg==
得到這個:kanbbrgghjl{zb____}vtlaln
這個迷住了,最后師傅提醒,就是柵欄和凱撒,然后盡然解密不行,那我就加密吧,
看到一個很想flag的
xman{oyay_now_you_get_it}
放入winhex,發現有xml的信息,就改成doc,沒想到有密碼,使用軟件破解一下
Accent OFFICE Password Recovery v5.1 CracKed By Hmily[LCG]
知道了密碼9919
都提交一下不對,然后
看着這些白色的東西其他沒東西
似乎有東西
Flag{okYOUWIN}
放入winhex,分離都沒有,最后放入010,發現了bpg,搜索了一下
看一啦是一個圖片,分離出來
YnNpZGVzX2RlbGhpe0JQR19pNV9iM3R0M3JfN2g0bl9KUEd9Cg= =
bsides_delhi{BPG_i5_b3tt3r_7h4n_JPG}