
문제 파일은 Wireshark capture file로 주어졌다. 공격자의 C&C 서버의 주소를 찾아내야 하는 문제다. C&C (Command & Control)서버란? : 일반적으로 감염된 좀비 PC가 해커가 원하는 공격을 수행하도록 원격지에서 명령을 내리거나, 악성코드를 제어하는 서버를 말한다. 캡쳐 파일을 프로토콜 순으로 정렬하고 HTTP 부분을 확인했더니 2개의 ip주소가 보였다. flag는 fiesta{md5(공격자 IP 주소)} 형식이므로 두 개의 ip 모두 flag 형식으로 만들어 제출해보았을 때 공격자의 IP는 116.38.182.214 이다. FLAG fiest{554f0075dfe484d48b19b7b8824dd8ec}
보호되어 있는 글입니다.

char는 정해진 길이만큼 받고 뒤 데이터는 잘리는 특징이 있다. 비밀번호가 char(32)인데, 'admin' aa'라고 입력하면 32를 넘는 뒷부분은 잘리고, 데이터 베이스는 admin으로 돌아간다. ( https://hack-cracker.tistory.com/165 ) admin 계정으로 로그인 해야 하는데, 회원가입을 admin으로 하려고 하니 이미 존재하는 아이디라고 뜬다. 개발자모드로 id의 최대 길이를 32에서 33으로 바꿔주고 ‘admin a’로 만들어주면 회원가입 성공! 비번은 aaaaaaaa로 설정했다. 가입한 admin / aaaaaaaa 로 로그인하면 FLAG 출력

비밀번호를 4번 틀리면, 비밀번호가 자동으로 바뀐다. id는 ip 값으로 고정이다. 프록시 걸고 버프스위트로 id=203.229.203.234&pw[]=pw&type=2 || row(1,1)=(select count(*), concat(ps,0x3a,floor(rand()*2))x from (select 1 union select 2 union select 3)y group by x limit 1) 로 인자 값을 바꿔준다. DB Error :: Duplicate entry '132b541995423a858ffb981d52dbe945:1' for key 'group_key' 위에서 error로 나온 132b541995423a858ffb981d52dbe945 값을 비밀번호에 넣고 로그인 하면 FLAG가 출력

API 서버로부터 넘겨받기 위해서는 /api/board/~~~~(number)로 넘겨줘야 한다. MangoDB의 objectID의 구조 FLAG의 timestamp는 2번째 게시글(Mongo)보다 2초 늦게 개시되었으므로 +2 해준다. FLAG의 counter는 1개시물마다 +1씩 증가하고 있으니 +1을 해준다. 즉, counter는 60e6ede0086caf98 timestamp = 0x624B07C0 + 2 print(hex(timestamp)[2:] + "60e6ede0086caf98") 출력 결과 -> 624b07c260e6ede0086caf98 http://host1.dreamhack.games:13484/api/board/624b07c260e6ede0086caf98 로 이동시 플래그 출력.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
- Total
- Today
- Yesterday
- 해킹
- Android
- Steganography
- web
- 취약점
- md5
- reversing
- rev
- forensics
- FTKImager
- cheatengine
- AssaultCube
- 안드로이드
- MISC
- networking
- sqlinjection
- forensic
- 드림핵
- mongodb
- Fiesta
- 포렌식
- Cookie
- SQLi
- 인시큐어뱅크
- dreamhack
- 모바일
- 리버싱
- 스테가노그래피
- CTF
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |