일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 웹 해킹
- 해킹캠프
- WEB-hacking
- 웹해킹
- hackingcamp ctf writeup
- 해외 워게임
- Hacker.org
- XSS-game
- CVE
- Web
- hackingcamp
- Web Hacking
- hacking
- thinkPHP
- backdoorctf 2023 web
- cve 분석
- writeup
- webhacking
- 해킹캠프 ctf
- php
- backdoorctf 2023 web Unintelligible
- CTF
- backdoorctf 2023
- backdoorctf writeup
- wargame.kr
- 해외 wargame
- RCE
- XSS
- hackctf
- WarGame
- Today
- Total
목록CTF write up (22)
<OOO>
CTF 풀다가 못 푼 문제가 있었는데, 복기할 겸 쓴다. (지금은 문제가 닫혀있어 글로 작성한다.) CTF : https://play.potluckctf.com/ 먼저 걸려있는 조건은 하단과 같다. 1. -no-shell-escape 옵션 적용 2. php 사용 no-shell-escape 의 옵션은 write18을 사용하지 못하도록 설정하는 옵션이다. * write18 이란? 서버에 명령어를 직접 전달할 수 있는 함수 RCE 하는 방법은 하단과 같다. 1. 파일을 생성 2. 파일 생성 시 내용에 php 코드 삽입 최종 페이로드 \newwrite\tempfile \immediate\openout\tempfile=asdf.php \immediate\write\tempfile{
CTF 문제 풀다가 내부망 침투와 아주 살짝 관련된 문제가 있어서 써본다. admin-panel.local 로 들어가야 flag가 나오는 문제인데, ecorpblog.uctf.ir 서버를 거치지 않고는 못 들어가는 서버다. ecorpblog 서버에 접속을 하면 이런 화면이 보이는데, 글 같은 것이 보인다. 해당 글을 클릭하게 되면 이렇게 글이 보인다. 이거는 처음엔 어떤 유형인지 감이 잘 오지 않았는데, 여기서 스크립트를 잘 보면 답이 나온다. api 가 존재하며, 파일 요청 시 /api/view.php 에 file:/// 을 사용하여 파일을 요청하게 되는데, 여기서 설마 LFI가 터질까 라는 생각을 했었고, 터졌었다. 이렇게 /etc/hosts 파일을 잘 불러오는 걸로 보아 음... RCE를 해야하나?..
이번 2023년 linectf에서 문제를 복습하는 차원으로 풀어보고자 한다. [Baby Simple GoCurl] 뭔가 SSRF 같이 생긴 문제다. 소스코드 - main.go package main import ( "errors" "fmt" "io/ioutil" "log" "net/http" "os" "strings" "github.com/gin-gonic/gin" ) func redirectChecker(req *http.Request, via []*http.Request) error { reqIp := strings.Split(via[len(via)-1].Host, ":")[0] if len(via) >= 2 || reqIp != "127.0.0.1" { return errors.New("Someth..
오랜만에 글을 쓰는 것 같다. 푼 문제는 Rev - Meow pyjail - TheOnlyJail crypto - Ancient Web - get flag 1 , get flag 2 + 그리고 팀원이 푼 문제도 있긴 한데 문제가 닫혀서 확인을 할 수가 없다... [Pyjail] 저 주소로 들어가면 입력할 수 있는 창이 나온다. import os 입력 후 os.system('ls') 를 입력하게 되면 최상위 디렉토리를 보여준다. 여기서 특수문자는 대부분 필터링이 되어 있으므로 우회 하는 방식이 아닌 것으로 생각했다. 어차피 os 모듈 사용할 수 있는데 프로세스나 볼까 해서 봤더니 sh 라는 글자가 있어 os.system('sh') 입력 후 ls 치니 친절히 떠서 /home/ctf/flag.txt 읽었다. ..
Cat Lovers 고양이는 사랑이다. 문제 서버로 들어가면 이렇게 보인다. 고양이는 언제봐도 귀엽고 사랑스럽다. 여기서 개발자 도구(F12)를 키게 된다면 이렇게 보인다. image.php 페이지에서 file 파라미터로 이미지를 불러오는데, 여기서 LFI가 터진다. 그러나 image.php?file=../../../../../etc/passwd 로 요청 할 경우 이렇게 상상했던 것이 아닌 다른 모습이 뜬다. 이때는 cmd에서 curl로 요청을 하면 된다. 맨 하단 catlover의 계정에 flag가 있다. Brainfuck Machine 문제 서버로 들어갈 경우 brainfuck 으로 인코딩이 되어 있으면 디코딩을 하여 output으로 출력을 해주는 사이트이다. 처음에는 어떻게 풀어야 할 지 감을 못잡..
10으로 마무리 했지만, 웹 문제가 많이 없어서 좀 아쉬웠던 대회였던것 같다. 웹은 총 3문제가 있었으며, 신박한(?) 기술보단 게싱이 좀 더 많았던 대회가 아닌가 싶다. 웹 페이지에는 이거밖에 안나온다. 그러나 robots.txt로 request를 날리면 flag 파일의 위치를 알려준다. 얘는 뭘까 하면서 웹 페이지를 뒤적거리던 중 우연히 소스를 보게 되었는데, 주석으로 request=santa 가 나와있었다. http://ctf주소/santa 를 날리면 되는줄 알았으나, http://url/?santa= 로 요청을 해야지 웹 페이지가 변하는걸 확인하였다. 여기서 {{7*7}}를 요청하면 49가 나오게 되는데, ssti 취약점인걸 알 수 있다. {{config}}를 요청하면 flag가 나온다. 지금은 ..
usb 패킷을 캡쳐한 파일이다. usb_capdata 부분에 키보드 자판을 입력한 것으로 보이는 패킷들이 다수 존재한다. 오픈 소스를 이용하면 쉽게 풀 수 있다. tshark 명령어로 추출+정렬을 좀 해주고 오픈 소스를 이용한다. 이런식으로 C언어로 짜여진 코드가 나오게 되는데, includeE나 라던가 printfF 같은 이상한 것들이 있는데 친절하게 지워주고 컴파일 시킨 후 코드 실행을 하면?