- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- compound
- DreamHack
- pow
- V2
- 코인
- overthewire
- hacking
- Leak
- Ethereum
- 블록체인
- defi
- 반딧
- Crypto
- web3
- 리눅스
- blockchain
- pwnable
- 비트코인
- security
- 해킹
- solidity
- Linux
- wargame
- PWN
- bitcoin
- BANDiT
- 이더리움
- shellcode
- lending
- 해시
목록study_SECURITY/Reversing (2)
Nullorm
1. 정적분석 vs 동적분석 정적분석(Static Analysis)는 외적인 관찰만을 통해 정보를 알아내는 것을 의미하고, 동적분석(Dynamic Analysis)은 실행을 통해 동작을 분석하는 것을 의미함. 둘 중 어느 방법이 더 좋다고 할 수 있는지 말하기 힘들며, 두 방법을 모두 적절히 혼용하여야 대상을 효과적으로 분석할 수 있음. 동적인 방법만을 고수하면 큰 구조를 놓칠 수 있고, 반대로 정적인 방법만을 고수하면 실행을 통해 직관적으로 알 수 있는 부분을 분석하느라 시간을 허비할 수 있음. 2. 정적분석 2-1. 정적분석의 장점 정적분석을 사용하면 프로그램의 전체적인 구조를 파악하기 쉬움. 정적 분석 도구들은 프로그램이 어떤 함수로 구성되어있는지, 어떤 함수로 구성되었는지, 서로 어떤 호출 관계를..
1. C언어 코드의 바이너리 번역과정 code(.c) --전처리-- preprocessed source file (.i) --컴파일-- assembled file (.s) --어셈블-- object file (.o) --링크-- 바이너리로 번역! 1-1. 전처리(preprocessing) 1. 주석제거 // 또는 /**/으로 구성되어있는 주석을 제거하는 과정 2. 매크로 치환 #define으로 정의된 매크로는 자주 쓰이는 코드나 상숫값을 단어로 정의한 것 #define HI 3 //HI를 3으로 치환하라는 명령어 3. 파일 병합 일반적인 프로그램은 여러개의 소스와 헤더파일로 구성. 컴파일러는 이런 것들을 컴파일 이후 합치기도 하지만 전처리단계에서 합친 이후에 컴파일하기도 함. gcc에서는 -E 옵션을 사..