반응형

해킹대회 617

[PoseidonCTF] The Large Cherries - 리버싱 / IDA / Pwntool

쉬운 난이도의 리버싱 문제 원격으로 접속할 수 있는 주소와 Lao-Tzu 라는 이름의 바이너리 파일이 제공된다. 참고로 Lao-Tzu 는 춘추시대 철학자인 노자를 말한다. Lao-Tzu 파일을 리눅스 환경에서 실행시켜 보았다. Enter the secret for the magic word : 라면서 사용자의 입력을 기다린다. 123 이라고 입력해봤는데 magic word 가 아닌지 바로 프로그램이 종료되었다. 바로 IDA를 이용해 바이너리를 열어서 main 함수를 살펴보았다. Enter the secret for the magic word : 라는 문구가 출력된 후에, scanf 로 사용자 입력을 받아 v9 변수에 저장한다. 그다음 magic_word 함수에 v9를 인수로 집어넣고, 그 결과를 v4에 ..

CTF/리버싱 2022.11.12

[Root Me] APNG - Just A PNG - 포렌식 / 스테가노그래피

오랜만에 풀어본 Root Me의 스테가노그래피 문제 처음 보는 문제유형이라 신기했다. 문제 설명을 읽어보면 대학 동기가 애니메이션 안에 어떤 메세지를 숨겨놓았다고 적혀있다. 문제 제목은 APNG 인데 이게 아주 큰 힌트였다. 문제에서 주어지는것은 ch21.apng 파일이다. 문제 제목과 확장자가 일치하는게 뭔가 있는것 같다. 뭔가 특이한 점이 있나 살펴보기 위해 HxD로 해당 파일을 열어보았다. 맨 앞부분이 89 50 4E 47 0D 0A 1A 0A 로 시작하는것을 볼 수 있는데 모든 PNG 파일은 89 50 4E 47 0D 0A 1A 0A 로 시작한다. 이런걸 파일 시그니처 라고 하는데 아무 PNG 파일이나 골라서 HxD 프로그램으로 열어보면 이렇게 파일의 맨 앞에 똑같이 89 50 4E 47 0D 0..

워게임/Root Me 2022.11.11

[CTFlearn] Gobustme? - 웹해킹 / dirb / Python

CTFlearn의 서른다섯번째 문제 이번엔 easy 난이도의 웹해킹 문제이다. 문제 설명을 일어보면 ghost 들이 웹사이트를 만들었는데 숨겨진 장소가 있는것 같다고 한다. 아래쪽에 웹 페이지 주소가 적혀있다. 문제페이지에 접속하면 이런 화면이 나온다. ghost 들이 웹사이트에 침임해서 flag 를 어딘가에 숨겨놓았다고 적혀있다. 스크롤을 내려보면 아래쪽에 가사같은게 써있는데 마지막 줄에 보면 common wordlist 가 도움이 될거라고 적혀있다. common wordlist 를 눌러보면 이런 화면이 나온다. 웹 페이지를 구성할때 자주 쓰는 파일, 폴더명이 주욱 적혀있다. 이걸 주소창에 하나씩 대입해보면 실마리를 찾을 수 있을 것이다. 이번 문제처럼 URL에 무차별적으로 대입해서 웹 구조를 파악하는..

워게임/CTFlearn 2022.11.09

[2020CCE] Simple Pwn - 포너블 / 버퍼오버플로우 / Pwndbg / Pwntool / IDA

2020년에 진행되었던 국정원 주최 사이버공격방어대회 묵혀놨던 Write Up을 이제야 포스팅 해 본다. 이번에 풀이할 문제는 simple pwn 이라는 포너블 문제이다. 이번 대회에서 가장 쉬웠던 포너블 문제로 스택 버퍼오버플로우 관련된 문제이다. 문제파일로 simple_pwn 이라는 바이너리가 주어진다. 한번 해당 파일을 실행시켜봤다. Welcome. This will help you : 라고하면서 이상한 16진수 값을 던져주고 사용자의 입력을 기다린다. what 이라고 아무단어나 입력해봤더니 그대로 프로그램이 종료되었다. IDA 라는 디스어셈블러를 이용해 바이너리를 열어보았다. main 함수 외에 특별한 함수는 보이지 않는다. main 함수에서는 128바이트 크기의 v4 변수를 선언하는데, gets..

CTF/포너블 2022.11.08

[HackTheBox] Gunship - 웹해킹 / Prototype Pollution / RCE

HackTheBox 에서 제공하는 very easy 난이도의 웹해킹 문제 프로토타입 폴루션과 관련된 문제인데 당시 프로토타입 폴루션이라는걸 처음 접해봐서 푸는데 시간이 좀 걸렸다. 사실 아직도 완벽하게 이해는 못했다. 문제페이지에 접속하면 이런 화면이 나온다. 레트로 감성 가득한 웹페이지에 Who's your favourite artist? 라는 문구와 함께 이름을 입력하는 창이 보인다. 찾아보니 Gunship 은 밴드의 이름이다. Alex Gingell, Dan Haigh, Alex Westaway 세 사람으로 이루어졌다고 한다. const path = require('path'); const express = require('express'); const pug = require('pug'); con..

[2020CCE] Easy RSA - 암호학 / RsaCtfTool / Python

2020년에 진행되었던 국정원 주최 사이버공격방어대회 묵혀놨던 Write Up을 이제야 포스팅 해 본다. 이번에 풀이할 문제는 Easy RSA 문제이다. 문제 제목에 나온것 처럼 RSA 암호 알고리즘과 관련되어있다. RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙혔다. 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계되었다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록 하는 d를 구한다.(d는 개인키로 ..

CTF/암호학 2022.11.06

[Root Me] NoSQL injection - Authentication - 웹해킹 / Python

NoSQL Injection 과 관련된 웹해킹 문제 NoSQL 이란 Not only SQL 의 약자로 SQL 만을 사용하지 않는 DBMS 를 말한다. 기존 관계형 데이터베이스 보다 덜 제한적인 특징을 가진다. 이번 문제의 목표는 NoSQL Injection 을 통해 숨겨진 USER 를 찾는 것이다. 문제 페이지에 접속하면 이런 로그인 창이 나온다. 시험삼아 ID 와 PW 에 hello / hello 라고 입력해봤다. Bad username or bad password 라는 문구가 출력된다. URL을 보니 입력한 ID 와 비밀번호를 GET 방식으로 서버에 전송하고 있다. ID 는 login 변수에, 비밀번호는 pass 변수에 담아서 넘긴다. https://github.com/swisskyrepo/Paylo..

워게임/Root Me 2022.11.05

[2020CCE] Easyransom - 리버싱 / IDA / HxD / XOR

2020년에 진행되었던 국정원 주최 사이버공격방어대회 묵혀놨던 Write Up을 이제야 포스팅 해 본다. 제목에서 알 수 있듯이 이번 문제는 랜섬웨어와 관련된 문제이다. 랜섬웨어는 몸값을 뜻하는 Ransom과 Software(소프트웨어)가 더하여진 합성어로 컴퓨터에 저장된 문서파일이나 사진 등을 암호화하고, 복호화하는 대가로 몸값을 요구하는 악성코드를 말한다. 문제파일로 두개의 파일이 주어진다. 하나는 easyransome.exex.exe 파일이고 다른 하나는 flag.txt.easyransom 파일이다. exe 파일이 랜섬웨어 역할을 하는 파일인것 같고, flag.txt.easyransom 파일은 flag.txt 파일이 암호화되어서 easyransom 으로 확장자가 바뀐듯 하다. 암호화된 파일을 HxD..

CTF/리버싱 2022.11.04

[CTFlearn] Tux! - 포렌식 / HxD / Binwalk

CTFlearn의 서른네번째 문제 또다시 나온 그림파일 포렌식 문제이다. https://hackingstudypad.tistory.com/266 https://hackingstudypad.tistory.com/288 https://hackingstudypad.tistory.com/305 조금씩 다르긴 하지만 이전에 비슷한 문제를 많이 풀이했었다. 이번 문제는 쪼금 더 꼬아놓은 문제이다. 이게 주어진 Tux.jpg 파일이다. 귀어운 펭귄의 모습이 보이는데 얘는 턱스라고 부르는 리눅스 공식 마스코트 펭귄이다. HxD 프로그램을 이용해 Tux.jpg 파일을 열어보았다. 열자마자 바로 눈에 띄는 부분이 있는데, 두번째 줄부터 시작되는 ICAgICAgUGFzc3dvcmQ6IExpbnV4MTIzNDUK 라는 값이다..

워게임/CTFlearn 2022.11.02

[2020CCE] My Friend - 리버싱 / IDA / Python

2020년에 진행되었던 국정원 주최 사이버공격방어대회 묵혀놨던 Write Up을 이제야 포스팅 해 본다. 이번에 포스팅 할 문제는 My Friend 라는 제목의 리버싱 문제이다. 주어지는 파일은 mf 라는 이름의 바이너리 파일이다. 리버싱 카테고리에 있는 문제고, 알 수 없는 바이너리 파일을 받았으니 바로 IDA 라는 디스어셈블러를 이용해 열어보았다. IDA에서 인식하길 해당 파일은 Mach-O 파일이라고 한다. Mach-O 파일은 애플의 MacOS 에서 동작하는 프로그램이다. 개인적으로 CTF에서 Mach-O 파일이 나오는걸 이때 처음봤다. IDA로 분석해보면 함수가 친절하게 이거밖에 없다. 그중 _main 함수와 _get_flag 함수가 눈에 띈다. _main 함수의 내용이다. 별 내용이 없다. 사용..

CTF/리버싱 2022.11.01
반응형