Wargame/dreamhack(22)
-
DreamHack [web] Carve Party
web분야 워게임 문제 서버는 없고 파일만 존재한다.파일을 다운받으면하나의 html이 존재하고 접속하면호박 그림이 있다.10000번 클릭하면 flag가 출력된다는 것을 추측해볼 수 있다. 노가다로 풀 수 있는 문제 못참지~ㅋㅋㅋㅋㅋㅋㅋㅋ200번 정도 클릭해봤더니 호박에 입이 생겼다.^▽^ 이런 모습이지 않을까?ㅋㄱㅋㄱㅋㄱ 소스코드 확인 $('#jack-target').click() 함수가 counter의 값을 증가시킨다. counter의 값을 수정하면?0이 나왔지만 이상한 문장이 출력되었다.counter의 값을 바꾸면 안되고 클릭을 해야하는 것 같다.내가 10000번을 클릭하면 내 마우스가 세상을 떠날 것 같으니 자동으로 실행되도록 코드를 짰다. var i=0while(ii가 10000보다 작을동안..
2024.05.06 -
DreamHack [web] web-ssrf
dreamhack webhacking의 ssrf에서 파생된 워게임이다. 서버에 접속하면 /home /about /contact 경로가 있다. 아래 image viewer를 누르면 해당 화면이 출력된다. view를 클릭하면dreamhack 이미지가 나오고소스 코드를 확인해보면 엄청 긴 base64로 encoding된 소스 코드를 확인할 수 있다.(밑으로 더 길게 있다,,,) 플래그가 있는 경로 /app/flag.txt를 입력하면 해당 화면이 출력된다.해당 화면에서 출력되는 인코딩형식을 디코딩하면 404 Not Found Not Found The requested URL was not found on the server. If you entered the URL manually please check ..
2024.05.06 -
DreamHack [web] image-storage
웹해킹의 File Vulnerability에서 파생된 워게임 문제다. 학습한 내용을 바탕으로 문제에 접근하여 보다 쉽게 플래그를 획득할 수 있었다. 서버에 접속하면 Home, List, upload 페이지가 존재한다. 문제 파일은 index.php, list.php, upload.php 총 3개의 php 파일이 있다. upload.php 파일 확인 결과 업로드 된 파일의 이름을 $name 변수에 할당한 후, 그대로 저장하고 있다. 플래그가 /flag.txt 경로에 존재하는 것을 문제 설명을 통해 확인할 수 있다./flag.txt로 이동하여 파일을 읽을 수 있는 command를 php문으로 작성했다.파일을 읽고 내용을 출력하는 cat 명령어를 사용하였다. 정상적으로 업로드가 되었고 /List..
2024.05.06 -
DreamHack [misc] blue-whale
docker 워게임 입니다. (너무 어려운데 왜 비기너인거죠ㅜㅜ) 문제를 보면 docker hub에서 이미지를 다운받아서 분석하면 플래그를 얻을 수 있다고 합니다. Hint 확인~~dive 라는 tool을 사용하는 건데..... 흐음,,, 먼저, vm에서 terminal을 통해 docker 이미지 다운docker hub에서 이미지를 다운받아야 하기때문에 pull 명령어 사용docker pull dreamhackofficial/blue-whale:1#레지스트리(Docker Hub)에 존재하는 도커 이미지를 다운받는 명령어권한이 없다고 하네요. 이미지를 다운받았으니 dive를 통해 오픈!#Dive 바이너리 다운로드(예시: v0.10.0)wget https://github.com/wagoodman/d..
2023.11.16 -
DreamHack [reversing] rev-basic-0
심심해서 다시푸는 리버싱 문제입니다,,^^;;인터넷에서 다운로드 받은 출처를 알 수 없는 프로그램은 사용자 컴퓨터에 치명적인 손상을 가하는 공격을 시도할 수 있습니다. ==> 가상머신환경 사용 powershell 사용다운로드 경로에 문제파일을 다운받아 실행한 결과Input : 출력abcd 입력Wrong 출력되었습니다.Input에 알맞은 문자열을 입력하면 플래그가 나올 것 같습니다. IDA ==> 정적/동적 분석shift+f12 ==> 문자열 확인correct 문자열을 통해 어떤 입력값이 correct를 출력하게 만드는지 찾아보겠습니다. f5 ==> 디컴파일puts("Correct"); 를 출력하는 조건인if문에 있는sub_140001000을 확인해보았습니다.return strcmp(a1, "Compar3..
2023.10.18 -
DreamHack [misc] baby linux
리눅스 문제입니다. ls 명령어 => 디렉토리 내용 출력echo $(ls) cat 파일 경로 => 파일의 내용을 출력echo $(cat hint.txt) #hint.txt 파일 읽기 ls 명령어 => 디렉토리 내용 출력echo $(ls ./dream/hack/hello) #./dream/hack/hello 디렉토리 내용을 출력flag.txt의 전체 경로 == ./dream/hack/hello/flag.txt cat 파일 경로 => 파일의 내용을 출력echo $(cat flag.txt) #flag.txt 파일 읽기 NO!가 출력된 이유를 확인하기 위해 문제파일 소스코드를 읽어보았습니다.명령창에 flag 가 들어가면 ==> NO! flag.txt 파일의 이름을 우회해서 들어가야 될 것 같습니다...
2023.10.17