day0
day0為近幾天的總結,明日正式開始。
crackme160
1.打開程序是一個彈窗,點擊確定后是一個窗口程序,第一個按鈕是用戶名和序列號驗證,第三個按鈕是序列號明文查找。首先要去掉彈窗,直接對MessageBoxA下斷點,運行程序,在MessageBoxA的調用處停下,單步執行到調用處,觀察并執行到最外層的封裝函數調用處,直接爆破即可去掉彈窗(P.S.最開始我是直接在調用MessageBoxA處爆破,但之后發現這是個被封裝的函數,爆破后所有彈窗都不會出現)。明文查找較為簡單,所以先進行,隨便輸入運行一下,發現錯誤后彈窗,可以對MessageBoxA下斷點或查找"Faild"和"Try Again"字符串定位到序列號驗證附近,下斷點到函數開頭,單步執行,執行到一次函數調用時,eax寄存器中為輸入字符串,edx為"Hello Dude!",猜測這是比較函數,eax和edx分別為兩個參數,跟進函數,發現直接比較 ,所以明文即為"Hello Dude!"。最后是用戶名與序列號算法,同樣通過關鍵字符串或MessageBoxA定位到驗證序列號附近,下斷點到函數開頭。觀察分析后逆出算法。
2
?
pwnable.kr
1.fd,觀察源代碼,要求輸入一個命令行參數,讓它減去0x1234作為文件標識符讀數據并與"LETMEWIN"比較,相同輸出flag。fd為0時表示標準輸入流,所以先輸入0x1234的十進制整數,再輸入"LETMEWIN"即可得到flag。
2.collision,觀察源代碼,有一個簡單的hash函數,它返回輸入參數的所有4字節和,主函數調用這個hash函數對我們輸入的值進行映射,若這個映射值等于0x21DD09EC則輸出flag,且命令行參數必須為20字節。要比較的hash值為4字節,而輸入為20字節,所以判斷流程為將20字節分為5組每組4字節然后相加。0x21DD09EC / 5 =?0x6c5cec8(取整后);0x21dd09ec-0x6c5cec8*4 =?0x6c5cecc;可以看到hash值可以由4個0x06c5cec8和1個0x06c5cecc組合而成,由于二進制數無法用鍵盤輸入,所以利用python輸入:python -c "print 4*'\xc8\xce\xc5\x06'+'\xcc\xce\xc5\x06'" | xargs ./col
3.bof,觀察源代碼,要求輸入數據到一個字符數組,但條件判斷是否打印flag時與我們的輸入毫無關系,即通過必定不會輸出,所以需要利用棧溢出。通過輸入來覆蓋key使key等于0xdeadbeef即可獲得flag。將flag二進制文件反匯編,即可知道其堆棧情況,算出占位字符有0x34字節,直接覆蓋即可。(python2 -c "print 0x34*'a'+'\xbe\xba\xfe\xca'";cat) | nc pwnable.kr 9000,這里加上cat命令是可以向nc多次輸入,而不是輸入一次就斷開。?
bandit
1.ssh連接成功后即可用cat命令查看flag
2.密碼文件名為-,在命令中-會識別為對參數選擇,所以不能直接查看,使用./-即可表示這是當前文件夾下的文件
3.密碼文件的名字包含空格,直接使用鍵盤輸入空格會使得命令識別為多個參數,用tab鍵補全發現空格用\ 轉義
4.密碼文件名以 . 開頭,變為當前文件夾中的隱藏文件,使用ls -a即可查看隱藏文件
5.有許多文件,使用grep命令查找當前文件夾下帶有password內容的文件,grep -r "password" .
6.提示密碼文件大小為1033bit,使用find命令查找符合這個屬性的文件,find -size 1033c
7.提示為owned by user bandit7, owned by group bandit6, 33byte,同樣用find命令查找,find -user bandit7 -group bandit6 -size 33c
8.文件有大量數據,提示密碼在million那一行,使用grep命令過濾
9.文件中有許多重復的字符串,提示為密碼只出現一次,通過sort+uniq命令獲取單行。cat data.txt | sort | uniq -u
10.文件中大部分數據不可讀,提示密碼前有等號,使用string命令與grep過濾
11.文件使用base64加密,使用cat data.txt | base64 -d解密并輸出?
12.文件使用13偏移的移位加密,可用腳本還原,也可使用tr命令
13.多層壓縮,熟悉gz,bz2,tar命令
14.ssh使用rsa公鑰進行遠程登陸,使用-i參數附帶證書文件(即私鑰)
15.向本機30000端口提交本關密碼,使用nc命令完成
轉載于:https://www.cnblogs.com/amlkhlwd33/p/9388397.html
總結
- 上一篇: 利润分配的七个顺序
- 下一篇: xp怎么正常开机 xp如何正常启动