일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 카이사르
- writeup
- reversing
- forensics
- #picoCTF2018
- 리눅스
- 해설
- 번역
- #hacking
- cryptography
- 시스템해킹
- picoCTF2018
- CTF
- 스택
- general skills
- write up
- 정답
- dreamhack
- Hxd
- 해킹 공부
- Protostar
- 시스템
- Smashing The Stack For Fun And Profit
- 버퍼오버플로우
- grep
- KOISTUDY
- 리버싱
- WEB
- picoCTF
- Aleph One
Archives
- Today
- Total
Security || AI
어셈블리 ROL, ROR 코드 구현 본문
리버싱 문제를 풀다가 ROL, ROR이 나왔는데, 기드라의 경우 디컴파일 결과가 단지 >>와 같이 쉬프트 연산만 수행하는 방식으로 나오는 문제를 겪었다.
따라서, 이를 해결하기 위해 파이썬으로 ROL, ROR 함수를 따로 구현하였다.
ROR: 00010001이면, 10001000이 된다.
def ror(x, n):
shiftBit = x >> n
carryBit = x << (8 - n)
carryBit &= 255
return shiftBit | carryBit
ROL: 10010000이면, 00100001이 된다.
def rol(x, n):
shiftBit = x << n
shiftBit &= 255
carryBit = x >> 8 - n
return shiftBit | carryBit
반응형
'Hacking&Security > 리버싱[reversing]' 카테고리의 다른 글
Angr 설치 및 사용 예제 (with Defcamp CTF 2015 - r100문제) (0) | 2021.01.30 |
---|---|
기드라(Ghidra) 설치 및 실행 (0) | 2019.03.13 |
올리디버거 실행오류(Themida, Winlicense) 해결법 (0) | 2019.01.06 |
GDB에 PEDA설치하기 (0) | 2018.10.18 |