CTF Writeup 41

FIESTA Writeup~

https://velog.io/@oriu9ri/2024-FIESTA-CTF 2024 FIESTA CTF규로롱~규로롱 팀(진우/matty/deayzl/나) 으로 막~ 풀다가 4문젠가 남기고 스코어보드가 저래 되었길래 123 등이 올솔한걸로 알고 놨다.피에스타 대회는 다른 대회와 다르게 시나리오 형식 중점으로velog.io 10.4 ~ 10.6 에 열렸던 삐에스타 대회 풀이를 드디어 올린다 작년에 운좋게 3등으로 상탔는데 올해는 6등으로 마무리됐다.4문제를 남기고 잠을 자러가고 점호받고 보니까 123등이 같은 점수길래 올솔이구나 하고 놔줬다. ㅋㅋ

CTF Writeup 2024.10.19

2023 Layer7 CTF Writeup

1. Loogle - rev / 986 pts음 문제 정적분석하다가 4시간 날려먹고 이리저리 동적분석해가면서 풀었다 database 폴더 내에 위처럼 파일이 4개가 저장되어있다. 저장 방식은 각 문서에 나오는 단어들을 rev_index_table에 쭉 저장하는데, 각 단어가 몇번째 문서에 몇번 나오는지가 저장되어있다.위 단어들이 각 문서에 있는데, henagon 부터 icosadecagon 까지는 총 22006개의 문서에 수십개에서 수백개씩 모두 들어가있다. 플래그에 해당하는 단어들은 20000 문서부터 20005 문서까지 저장되어 있다. 그리고 nc 서버가 열려있는데 서버에서는 search 바이너리가 실행되어서 문서를 검색할 수 있게 한다. cpp이지만 다행히 strip까지는 안되어있어서 아래처럼 생성..

CTF Writeup 2023.12.03

seeds - python bytes, int seed trick

2023.11.26 HSpace CTF - seeds import random flag = "hspace{}" random.seed(bytes.fromhex(input("hex seed> "))) cache = random.getrandbits(50000) random.seed(int(input("int seed> "))) assert cache == random.getrandbits(50000) print(flag) seed를 bytes와 int 로 각각 설정하는데 같은 시드인 것처럼 동작해야한다. python seed 코드를 확인해보면 https://github.com/python/cpython/blob/main/Lib/random.py#L167C32-L167C32 seed 가 bytes 인 경우 i..

CTF Writeup 2023.11.27

babysrc - CSP default-src, unsafe-inline bypass

2023.11.25 - Incognito 2023 CTF - babysrc 단순 XSS 문제인데 다음의 조건이 있따. 1. CSP - default-src, unsafe-inline 2. xss 로 post(/flag) -> res -> get(hook) unsafe-inline 이 허용되어서 script 태그처럼 js 코드를 실행시킬 수는 있는데, default-src 에 connect-src 가 포함되어 있어서 fetch, xhr 등으로 /flag 나 웹훅 사이트에 리퀘를 못 날린다. 다른 CTF 에서도 이러한 유형의 문제를 만나고 해결하지 못한 경험이 많은데 이번에 해결하였다 window.open 으로 원하는 주소에 접근할 수 있고 이는 CSP 에 걸리지 않아 이것을 이용하면 된다. 특이한 것은 P..

CTF Writeup 2023.11.27

freeboard - php blind error based sqli

평소 sqli 문제는 잘 못 풀었었는데 이제 어느정도 감 잡은 것 같다. blind sqli 코드 재활용을 위해 남긴다 from requests import * URL = 'http://54.180.124.188:8010/' for k in range(1): print('*'*10) s = [] for j in range(40): # print('asdf') start = 0 end = 255 for i in range(30): bs = (start + end) // 2 # print(bs, start, end) password = '12345678' username = f"' or (select case when ord(substr(s.column_name, {j+1}, 1)) >= {bs} then ..

CTF Writeup 2023.11.27

hdrive - tar symbolic link attack

2023.11.26 - Hspace CTF - H Drive tar 파일만을 업로드할 수 있고 압축한 파일들을 다운받을 수 있다. https://blog.bi0s.in/2020/06/07/Web/Defenit20-TarAnalyzer/ TarAnalyzer - 2020 Defenit CTF | bi0s tl;dr Zip Slip Vulnerability + YAML Deserialization Attack + Race Condition Unintended Solution: Upload symlink leading to arbitarary file reads Solved by: c3rb3ru5 Challenge Description Our developer built simple web server for..

CTF Writeup 2023.11.27

safe-compiler / C jail Trick

2023.11.26 Hspace CTF - safe compiler BAN_LIST = ['sys', 'exe', 'asm', 'attr', 'mprotect', 'mmap', 'munmap', 'open', 'read', 'write', ';', 'include'] CTF C Jail semicolon & include filtered bypass 1. semicolon #include int main() { if(printf("Hello, World\n")) {} } if, while, switch 안에 표현식(expression) 을 넣어서 세미콜론 없이 코드를 작성할 수 있다. 2. include 헤더를 include 할 수 없어서 __asm__ 을 생각해볼 수 있는데 표현식이 아니라 statem..

CTF Writeup 2023.11.27