iT邦幫忙

2025 iThome 鐵人賽

DAY 28
0
Security

逆向系列 第 28

逆向題目練習 - blade(3)

  • 分享至 

  • xImage
  •  

在上一篇文章中,我們已經成功模擬受害者連到 server 的過程了,我們可以對受害者進行以下操作:
1.png
2.png

不過這些操作都只是對我們的電腦進行基本的指令操作,例如 pwd, cd , mkdir
3.png

所以目前還沒有任何與 flag 相關的線索

因此我們使用 IDA Free 開啟檔案,透過反組譯,查看其內容
https://ithelp.ithome.com.tw/upload/images/20250830/20168374mx1O3F5pyk.png

裡面包含的 function 很多,但我們需要的內容應該與 server 部分的程式碼相關,觀察了 seccomp_shell 的部分,發現這個部分不只有原先在終端機列出的可用指令 pwd, mkdir, getuid 等,還有一些未列出來的,例如 verify, prompt
https://ithelp.ithome.com.tw/upload/images/20250830/20168374q3X5GlyDgy.png

  • 點擊 verify 後,查看其內容

  • 發現 cmp rdx, 40h ; '@’ 表示「檢查 rdx 是否等於 0x40」,可以理解為「檢查該輸入長度是否為 40 bytes」, rdx 的說明如下:

    • 函式呼叫慣例(Calling Convention)
      在 Linux x86-64 裡,函式參數會依序放在暫存器:
      • 第 1 個參數 → rdi
      • 第 2 個參數 → rsi
      • 第 3 個參數 → rdx
      • 第 4 個參數 → rcx
      • 第 5 個參數 → r8
      • 第 6 個參數 → r9
      • 超過的參數再放入 stack

https://ithelp.ithome.com.tw/upload/images/20250830/201683740ScAQQ5mgq.png


上一篇
逆向題目練習 - blade(2)
下一篇
逆向題目練習 - blade(4)
系列文
逆向30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言