일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ctf-d
- Stored Cross-Site Scripting
- union sql injection
- QR코드
- strcmp 취약점
- 취약점 진단
- reversing
- Import/Export Wordpress Users
- 보고서
- CVE
- zap 파일
- LifterLMS
- multimedia
- steghide
- wargame.kr
- xcz
- DOS
- 포렌식
- scapy
- forensic
- 암호학
- volvolatility
- Whitespace Programming
- Wordpress
- 스테가노그래피
- 네트워크
- zip 파일 구조
- 주요정보통신기반시설 기술적 취약점 분석 평가 상세 가이드
- CSV Injection
- Python
- Today
- Total
광팔이 보안이야기
[xcz.kr] 21번 PHP Obfuscation Crack 본문

문제 제목부터 php 난독화 풀기이다.
일단 소스를 열어서 확인했다.

벌써부터 힘이 빠진다...
https://www.unphp.net/decode/eac0df34824ddf7f8466be54317754a4/
UnPHP - PHP Decode of ${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x67\..
PHP Decode ${"\x47\x4c\x4f\x42\x41\x4c\x53"}["\x67\x61\x73y\x61\x72\x6b\x6e\x64"]="\x62";${"\x47\x4c\..
www.unphp.net
저번에 php를 공부하다 얻게 된 php 난독 복호화해주는 사이트이다.

복호화하면 이 정도로 줄어들긴 한다.
그래도 아직 깔끔하지 않고 보기 불편해서 notepad의 JStool을 이용해 조금은 보기 편하게 바꿨다.
일단 코드를 해석해 보자.
코드가 너무 길기 때문에 간단하게 설명하겠다.
함수 h($a)를 보면 $a의 0번 ~ 4번 아스키코드를 추출하여 그 합을 return 해준다.
이제 다음 조건문들을 충족하면 key값을 출력한다
explode함수를 이용하여 - 기준으로 5개로 나눠진다.(key - key - key - key - key )
이제 봐야 하는 if문들을 봐야 하는데 진짜 너무 길다...
일단 정리를 하면... 모든 key들은 배열에 들어가는데 if문 안에서 잘 봐야 다한다.
여기서
1번 key : 312 < key < 333( 숫자 / 숫자 / / / 문자 )
( 8 / 8 / 8 / 8 / f ) 합 326
2번 key : 300 < key < 326( 문자 / / / 숫자 / 숫자 )
( f / 7 / 7 / 7 / 7 ) 합 322
3번 key : 349 < key < 407( 문자 / 숫자 / / / )
( f / 7 / f / 7 / 7 ) 합 369
4번 key : 357 < key < 359( 문자 / 문자 / 숫자 / 숫자 / 숫자 )
( a / a / 9 / 9 / 2 ) 합 358
5번 key : 모든 key 합 / 4의 반올림 값 == 5번 key (모든 key의 합 / 4의 반올림한 값이 5번 key값과 같아야 한다.)
( F / F / F / M / 9 ) 합 344

플레그를 얻을 수 있다.

문제는 쉬운데.... 코드 정리하고, 계산하는데 시간이 너무 많이 걸렸다..... 이런 문제는 별로 재미없다.
플레그 값 : what_the_fuckin_0bfuscati0n
'Wargame > xcz.kr' 카테고리의 다른 글
[xcz.kr] 23번 Zero & One (0) | 2021.01.21 |
---|---|
[xcz.kr] 22번 Who's Notebook? (0) | 2021.01.21 |
[xcz.kr] 20번 Bonus Problem! (0) | 2021.01.19 |
[xcz.kr] 18번 Web Basic (0) | 2021.01.19 |
[xcz.kr] 17번 Password Recover... (0) | 2021.01.18 |