티스토리 뷰
728x90
반응형


입력 값과 비교하는 함수를 들어가서 확인한다.
(a[i] * 0xFB & 0xFF == byte_140003000[i])
* 0xFB는 251로 곱하는 것.
&0xFF는 256으로 나누었을 때 나머지와 같다
(즉, &0xFF는 %256과 같음)
51 * 251 * X = b * 51(mod 256)
51을 곱한 이유는 51 * 251을 256으로 나눈 나머지가 1이되기 때문
즉, X = b * 51 % 256으로 구할 수 있다
byte=[0xAC, 0xF3, 0x0C, 0x25, 0xA3, 0x10, 0xB7, 0x25, 0x16, 0xC6, 0xB7, 0xBC, 0x07, 0x25, 0x02, 0xD5, 0xC6, 0x11, 0x07, 0xC5]
s=''
for i in range(len(byte)):
s += chr((byte[i] * 51) % 256)
print(s)
반복문으로 암호를 알아낸다.

DH{Did_y0u_brute_force?}
728x90
반응형
'Wargame > Reversing' 카테고리의 다른 글
| [Dreamhack.io] Small Counter (1) | 2023.08.04 |
|---|---|
| Jreversing2 (0) | 2022.11.16 |
| [Dreamhack.io] Rev-basic-7 (0) | 2022.11.14 |
| [Dreamhack.io] Rev-basic-6 (0) | 2022.11.09 |
| [Dreamhack.io] Rev-basic-5 (0) | 2022.11.09 |
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- sqlinjection
- networking
- Fiesta
- forensics
- 취약점
- CTF
- AssaultCube
- 모바일
- 해킹
- dreamhack
- 안드로이드
- 드림핵
- mongodb
- 포렌식
- Steganography
- reversing
- 스테가노그래피
- MISC
- SQLi
- FTKImager
- md5
- web
- Android
- 인시큐어뱅크
- Cookie
- 리버싱
- cheatengine
- forensic
- rev
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
글 보관함