본문 바로가기
728x90

dreamhack26

[Dreamhack] file-download-1 (Beginner) Description File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으면 플래그를 획득할 수 있습니다. 풀이 step 1. 접속 정보 사이트로 접속 메모를 업로드 하는 페이지가 나온다. 일단 화면에 나와있는데로 업로드를 한번 해보았다. 업로드를 했더니, 메모가 저장이 되었고, 경로는 위 그림처럼 /read?name=my-first-memo인것을 확인할 수 있었다. 그렇다면, read?name= 뒤에 플래그가 저장이 되어 있는 경로를 적어주면 될 것 같아, 코드를 한번 살펴보았다. step 2. 문제 코드 확인 @APP.route('/read') def read_memo(): error = False data = b'' filename = request.args.g.. 2024. 1. 17.
[Dreamhack] web-misconf-1 (Beginner) Description 기본 설정을 사용한 서비스입니다. 로그인한 후 Organization에 플래그를 설정해 놓았습니다. 풀이 step 1. 접속 정보 사이트로 접속 사이트에 접속해 보았더니 로그인 페이지가 나왔다. 문제 설명에 기본 설정을 이용한 서비스라길래 admin / admin으로 로그인 해 보았더니,, 접속이 됐다..! step2. 플래그 찾기 Organization에 플래그를 설정해 놓았다고 하니, organizaion을 찾아보았다. Server Admin의 Orgs에 들어가 보니 flag가 안보였다.그래서 옆에 Users나 Settings안에 내용을 찾아가 보며 플래그를 찾고 있었는데, Settings에서 DH를 찾을 수 있었다. 2023. 11. 28.
[Dreamhack] simple_sqli (LEVEL 1) Description 로그인 서비스입니다. SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 풀이 step 1. 접속 정보 사이트로 접속 & 파일 다운로드 후 확인 접속하면 로그인을 할 수 있는 페이지가 나오게 된다. 코드를 살펴보면, db.execute('create table users(userid char(100), userpassword char(100));') db.execute(f'insert into users(userid, userpassword) values ("guest", "guest"), ("admin", "{binascii.hexlify(os.urandom(16)).decode("utf8")}");') @app.rou.. 2023. 11. 28.
[Dreamhack] pathtraversal (Beginner) Description 사용자의 정보를 조회하는 API 서버입니다. Path Traversal 취약점을 이용해 /api/flag에 있는 플래그를 획득하세요! 풀이 step 1. 접속 정보 사이트로 접속 & 파일 다운로드 후 확인 userid를 입력하는 get_info 화면이 나온다. users = { '0': { 'userid': 'guest', 'level': 1, 'password': 'guest' }, '1': { 'userid': 'admin', 'level': 9999, 'password': 'admin' } } guest를 입력하면 userid, level, password가 json으로 나타난다. 버프 스위트를 이용하였다. userid를 ../flag 로 바꾸고 Forward를 했더니 플래그가.. 2023. 11. 15.
[Dreamhack] ssp_001 (LEVEL 2) Description 이 문제는 작동하고 있는 서비스(ssp_001)의 바이너리와 소스코드가 주어집니다. 프로그램의 취약점을 찾고 SSP 방어 기법을 우회하여 익스플로잇해 셸을 획득한 후, “flag” 파일을 읽으세요. “flag” 파일의 내용을 워게임 사이트에 인증하면 점수를 획득할 수 있습니다. 플래그의 형식은 DH{…} 입니다. 풀이 step 1. 접속 정보 사이트로 접속 & 파일 다운로드 후 확인 while(1) { menu(); read(0, select, 2); switch( select[0] ) { case 'F': printf("box input : "); read(0, box, sizeof(box)); break; case 'P': printf("Element index : "); sca.. 2023. 11. 15.
[Dreamhack] image-storage (LEVEL 1) Description php로 작성된 파일 저장 서비스입니다. 파일 업로드 취약점을 이용해 플래그를 획득하세요. 플래그는 /flag.txt에 있습니다. 풀이 step 1. 접속 정보 사이트로 접속 & 파일 다운로드 후 확인 3r개 php 파일이 있다. 이 중 upload.php을 살펴보았다. 2023. 11. 8.
728x90