일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 어셈블리어
- RITSEC
- Next.js
- 보안뉴스
- 리버싱
- Nop Slide
- NewsClipping
- RITSEC CTF 2019
- Hackerschool
- termux
- buffer over flow
- SQL Injection
- Shadow 동아리
- x64dbg
- BOF
- ctf
- writeup
- PWN
- 리눅스
- Python
- 뉴스클리핑
- ftz
- webhacking
- reversing
- HackCTF
- Linux
- 웹해킹
- requests
- 버퍼오버플로우
- CodeEngn
- Today
- Total
목록Write UP (62)
Jaeseo's Information Security Story

Uplink 문제구분 난이도 작성자 Pwn 상 JaeseoKim 문제 내용 문제 풀이 일단 주어지는 주소를 통해 접속을 해봅니다. root@kali:~# nc uplink.ritsec.club 8001 G�� @�� @�� @�� @�� @�� @�� @�� @�� @�� @�� @��root@kali:~# 접근을 하자 알 수 없는 문자만 출력을 해주는 모습을 볼 수 있습니다. 이때 한번 hex 형태로 받아서 봅니다. root@kali:~# nc uplink.ritsec.club 8001 | xxd 00000000: 0847 bfff 2040 80c2 2040 80c2 2040 80c2 .G.. @.. @.. @.. 00000010: 2040 80c2 2040 80c2 2040 80c2 2040 80c2..

the_doge 문제구분 난이도 작성자 Stego 하 JaeSeoKim 문제 내용 문제 풀이 문제를 보면 doge에게 treat를 먹이면 히든 메세지를 준다고 하는데 이 점을 이용해서 풀어본다. PS D:\OneDrive - JaeSeo\tools\steghide> .\steghide.exe extract -sf "D:\OneDrive - JaeSeo\moduboan\Ritsecctf2019\the_doge\the_doge.jpg" Enter passphrase: /*"treat"를 입력함!*/ wrote extracted data to "doge_ctf.txt". 이제 출력된 doge_ctf.txt를 본다. RITSEC{hAppY_l1L_doG3} 참고 포인트 steghide 사용!

Our First API 문제구분 난이도 작성자 WEB 중 JaeseoKim 문제 내용 문제 풀이 문제를 보면 2개의 사이트를 제공하고 있습니다. 일단 포트번호 4000번대로 들어가보면 아래와 같은 내용으로 되어 있는 것을 알 수 있습니다. :3000/AUTH에서 토큰을 발급 받고 :4000/API/ADMIN, :4000/API/NORMAL에서 인증을 하여 Flag를 도출해야 하는 문제로 보입니다. 일단 :3000/AUTH에서 토큰을 발급 받습니다. {"reason":"missing name parameter"} 접근을 하면 위와 같이 name 파라미터가 부족하다고 하는데 get 방식으로 파라미터를 넘겨봅니다. {"token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJuY..

Onion Layer Encoding 문제구분 난이도 작성자 MISC 하 JaeSeoKim 문제 내용 문제 풀이 문제를 보면 base16,32,64으로 150번을 인코딩 했다고 알려주고 있습니다. 이 점을 이용해서 계속 반복적으로 디코딩하는 스크립트를 짜봅니다. import base64 flag = open("onionlayerencoding.txt","r").read() for i in range(150): try: flag = base64.b64decode(flag) except: try: flag = base64.b32decode(flag) except: try: flag = base64.b16decode(flag) except: print("error") exit(0) print(flag) 이제 ..

Hop By Hop 문제구분 난이도 작성자 WEB 중 JaeSeoKim 문제 내용 문제 풀이 웹사이트에 접근을 해보면 메뉴에 admin 페이지 메뉴가 있습니다. 여기에 접근을 하면 아래와 같은 형태로 경고를 하면서 접근을 거부합니다. This site is restricted to Admin Computers only! Your incursion has been logged (10.0.0.37). 경고 IP를 보면 10.0.0.37로 사설 네트워크를 기록 하고 있는데 Proxy를 통해 전달이 되고 있는 형태로 의심이 됩니다. 한번 x-forwarded-for를 이용하여 127.0.0.1 루프백 주소를 전달 합니다. GET /admin HTTP/1.1 Host: ctfchallenges.ritsec.clu..

Crack me If You Can 문제구분 난이도 작성자 MISC 하 JaeSeoKim 문제 내용 문제 풀이 일단 제공하는 NC로 접속을 하면 아래와 같은 화면으로 입력값을 받습니다. root@kali:~# nc ctfchallenges.ritsec.club 8080 Some moron just breached Meme Corp and decided to dump their passwords... In the meantime, prepare your GPUs, and get Ready... Set.... and go CRACK! However... We have a theory that the passwords might come from darkweb2017-top10000.txt, xato-net-..

999 Bottles 문제구분 난이도 작성자 PWN 하 JaeSeoKim 문제 내용 문제 풀이 일단 999개의 ELF파일중 하나를 IDA로 통해 한번 열어봅니다. int __cdecl main(int argc, const char **argv, const char **envp) { char v4; // [esp+Bh] [ebp-Dh] unsigned int v5; // [esp+Ch] [ebp-Ch] v5 = __readgsdword(0x14u); /* ...................안쓰는 변수 생략................. */ p = 70; puts("What is my character?"); __isoc99_scanf("%c", &v4); if ( v4 == p ) puts("OK!");..

예전에 풀었던 Write Up 업로드 입니다.. 어설퍼도 이해 부탁드립니다. 일단 리버싱 문제이니 PE 분석을 간단하게 하고 시작합니다. 일단 C++로 짜여 졌다는 점과 아무런 Packing 조치가 되어 있지 않다는 점을 확인했습니다. 이제 IDA로 정적분석을 해봅니다. 간단하게 프로그램을 봤을 때 IsDebuggerPresent() 함수를 통해 리턴값이 0이라면 반복문을 돌고 그 다음부터는 v5하고 IsDebuggerPresent() 리턴값 XOR 연산을 통해 flag를 구하고 총 28번 반복을 한뒤 IsDebuggerPresent()값이 1이면 flag를 출력해주는 프로그램을 분석이 됩니다. 이제 이 문제를 푸는 방법이 직접 while문 도는 부분의 ZF를 수정해서 바꾸는 방법이 있지만 이러한 방법은..