iT邦幫忙

reverse相關文章
共有 36 則文章
鐵人賽 Security DAY 6

技術 Day6 - 為什麼要使用暫存器?

我在 Day2 的文章裡有講到暫存器(e.g. eax, ebx),可能對初學者而言相對陌生。這篇主要來介紹這些暫存器代表的意義與使用時機。 為什麼要使用暫存器...

鐵人賽 Security DAY 7

技術 Day7 - 組合語言- 不可不知之定址模式 - 上篇

多數組合語言指令(instructions)需透過運算元(operand)來存取資料[可以把運算元想像成容器]。有一些指令不需要運算元即可存取資料,而另一些指令...

鐵人賽 Security DAY 8

技術 Day8 - 組合語言 - 不可不知的定址模式 - 下篇

昨天我們知道:暫存器定址、立即定址、記憶體定址,是CPU 透過匯流排與記憶體互動時的不同方法。今天,來說明記憶體的定址方式。 記憶體定址 分成三類,直接存取、直...

鐵人賽 Security DAY 5

技術 Day5 - 記憶體到底如何存放程式?

記憶體在電腦中扮演極重要的角色。生活中,每次想多開幾個瀏覽器,電腦就開始 lag 甚至最後當機、跑不動,與記憶體的使用息息相關。本篇中,會說明程式在記憶體中的配...

鐵人賽 Security DAY 2

技術 Day2 - 寫程式的濫觴 - 用組合語言寫 Hello world!

學習一門新的程式語言,大多會從 Hello world 切入。完成後,總覺得離這門語言更親近一步XD Day2,我會講解如何使用組合語言寫 Hello worl...

鐵人賽 Security DAY 16

技術 Day16 - Linux 逆向神器 - Radare2

昨天介紹跨平台的神器(IDA Pro),今天介紹個人主要在 Linux 使用的逆向工具 - Radare2 Radare2 介紹 Wiki Radare2(...

鐵人賽 Security DAY 9

技術 Day9 - 閒來無事,何不來學學 Intel x86 指令?

今天來正式介紹一下 Intel x86 的指令。雖然前面已經偷渡了很多次XD,不過這裡分門別類的描述各個指令的使用時機。有點多,不過還是請讀者慢慢服用。 複製資...

鐵人賽 Security DAY 17

技術 Day17 - Linux 超強Debugger - GDB

今天來介紹另一款 Linux 逆向工具,我主要拿來動態分析使用。 GDB 介紹 Wiki GNU偵錯器(英語:GNU Debugger,縮寫:GDB),是...

鐵人賽 Security DAY 15

技術 Day15 - 逆向神器 - IDA Pro

工欲善其事,必先利其器。今天要介紹資安界的女神(對我而言) - IDA Pro。IDA Pro 是跨平台的逆向工具,Windows、MacOS、Linux 都有...

鐵人賽 Security DAY 18

技術 Day18 - Mac 逆向工具 - Hopper Disassembler

今天介紹 Mac 專用的逆向工具 - Hopper Disassembler。我使用的試用版,雖然半小時後就會自動斷開、也不能儲存更動過的地方,不過仍不失為一個...

鐵人賽 Security DAY 10

技術 Day10 - Syscall 好像時常聽到?到底是什麼?

介紹 Syscall (system call),中文翻成系統呼叫,可以把它理解成系統的 API (Application Programming Interf...

鐵人賽 Security DAY 3

技術 Day3 - 逆起來 - 逆向 Hello world!

今天的重頭戲,正是逆向昨天剛寫好的 Hello world,從反方向觀察程式碼的長相。如果運用得宜,你可以更了解程式的具體行為。在生活中,逆向工程使用時機就好比...

鐵人賽 Security DAY 30

技術 Day30 - 逆向 WannaCry 病毒,想哭病毒?

惡名昭彰的 WannaCry 讓 Windows 使用者欲哭無淚。今天來逆向 WannaCry,看這隻病毒到底有什麼實際行為?為什麼新聞說有人買下特定的網域,就...

鐵人賽 Security DAY 13

技術 Day13 - Hello world 的奇妙冒險

這張圖是 Hello world 執行後,歷經的過程。Reference User space v.s. Kernel space 這裡要先辨別,作業系統的 U...

鐵人賽 Security DAY 29

技術 Day29 - 總結推薦逆向資源

WannaCry 還沒逆完,把最後一天的內容拿出來擋一下。請讀者見諒XD今天不會講解技術,會推薦基礎的逆向工程資源。以下是我覺得不錯的教材,推薦給讀者。 Roa...

技術 學習成為人體 PE Parser

看日常分享: AwesomeCS FB 看技術文章: AwesomeCS Wiki 筆者最近在閱讀 aaaddress1 的大作: Windows...

鐵人賽 自我挑戰組 DAY 12

技術 12 陣列補充

前言 嗨大家好,昨天的練習應該不難。請看下面的解答: //第一題:請問下面 console.log 會出現哪個顏色? let color = ["re...

鐵人賽 Security DAY 14

技術 Day14 - 史上最強Debugger - 人體肉眼 Debugger

今天,準備要開始逆向程式碼。在介紹工具之前,先來解說逆向工程的邏輯。基本上,對於逆向,有很多現成的工具可以直接套用,但許多有其極限(當然,有工具可以提升效率,我...

鐵人賽 Security DAY 11

技術 Day11 - 如何生出 Hello world 小孩 - 理論篇

引言我有說到,因為好奇,才分享逆向工程的文章。今天就要來揭秘電腦是如何通過重重關卡,才能識別並執行程式設計師所寫的程式碼。不囉唆,先上圖, Reference...

鐵人賽 Security DAY 24

技術 Day24 - 一題入門的 CTF

今天介紹入門的 CTF 題目,可以檢驗過去的學習知識是否夠紮實(當然某些題目可能需要通靈XD)。基本上,會挑一些基礎的、可以解釋的題目當作練習題,並且把它寫成...

鐵人賽 Security DAY 12

技術 Day12 - Hello world 的誕生 - 實戰篇

昨天我們討論到程式的編譯過程,今天就來將理論化為實際。透過手把手教學,我會使用 C 語言講解程式碼是如何一步步變成電腦能理解的語言。 首先,我們回顧這張圖: R...

鐵人賽 Security DAY 25

技術 Day25 - Buffer Overflow

今天介紹簡單的 Buffer Overflow 題目。 Buffer Overflow 是什麼? 根據Wiki: (Buffer Overflow) 緩衝區...

鐵人賽 Security DAY 26

技術 Day26 - 提升程式被逆向的難度 - 編碼

Day14 我們說到的驗證程式,透過 strings 搜尋就可以找到。於是我們想要提升逆向的成本,何不將驗證方式改掉?改成駭客想不到的方式? 實作 原本的程式太...

鐵人賽 Security DAY 21

技術 Day21 - 逆向並找出函式呼叫的特徵

因為是函式呼叫所以能觀察到 main() 裡面去 call 其他 function 。今天介紹呼叫單一函數、函數裡僅有單一參數、雙參數、函數中再呼叫其他函數的情...

鐵人賽 Security DAY 19

技術 Day19 - 逆向條件判斷式

今天開始練基礎功,逆向我們常見的條件判斷式。包括:if、if-else、if-else-if。這些判斷式用高階語言寫都不難,但如果變成組合語言呢?請各位讀者挑戰...

鐵人賽 Security DAY 28

技術 Day28 - reversing.kr - Easy_ELF

reversing kr 是一個很不錯的練習逆向的地方。 reversing .kr 介紹 This site tests your ability to...

鐵人賽 Security DAY 27

技術 Day27 - 防止被 Debugger 逆向

昨天有嘗試將驗證字串編碼,但還是容易被逆向找到程式邏輯並繞過。今天嘗試透過 Fuzzing 將程式位元反轉使得 Debugger 無法逆向。 目標: 如下圖,B...

鐵人賽 Security DAY 20

技術 Day20 - 逆向並找出循環的特徵

今天逆向並找出循環的特徵。包括常見的 for、while、do-while、break、continue。今天換一套逆向工具,使用 Hopper Disasse...

鐵人賽 Security DAY 20

技術 Day 20. Reverse - Ghidra

前言 今天會嘗試使用 Ghidra 這個逆向工具來逆向昨天那支很簡單的 Hello world 程式,流程其實意外的不複雜 XD,那我們就開始吧~ 逆向工具 最...

鐵人賽 Security DAY 22

技術 Day22 - 逆向並找出陣列的特徵

今天準備逆向並找出陣列的特徵。包括陣列基本特徵、使用 for loop 遍歷陣列元素、二維陣列。 基本特徵 可以看到數字 10h, 20h, 30h 被 mo...