반응형

워게임 270

[SuNiNaTaS] Challenge11 - 리버싱 / Ollydbg

SuNiNaTaS 에서 제공하는 열한번째 문제 리버싱으로 분류된 문제이다. 문제에서 주어지는 것은 Project1.exe 파일이다. 실행시켜보면 이렇게 Key 값을 찾으라는 문구와 함께 입력창이 있는 프로그램이 뜬다. 해당 프로그램을 분석하기 위해 올리디버거를 이용해 해당 프로그램을 열어주었다. 우선 가장 먼저 우클릭 - Search for - All referenced text strings 를 눌러서 스트링을 살펴보았다. 그랬더니 Congratulation! , Authkey : 라는 글자가 보였고 그 근처에서 2V, XS, B6, H1, 0F 가 적혀있는것이 보였다. 이게 뭔가 KEY 값일거 같아서 순서대로 붙혀서 넣어봤는데 답이 아닌것 같았다. 일단 2V 와 Authkey 부분에 F2를 눌러서 브..

워게임/SuNiNaTaS 2024.03.26

[SuNiNaTaS] Challenge10 - 리버싱 / dnSpy

SuNiNaTaS 에서 제공하는 열번째 문제 리버싱으로 분류된 문제이다. 문제페이지에 들어가면 문제파일을 다운로드 받을 수 있다. 다운로드 받으면 reversing.exe 파일을 볼 수 있다. 실행시켜보면 이런 화면이 나온다. 간단하게 비밀번호 같은거 입력하는 창이 나오는데 잘못된 값을 입력하면 이렇게 Try again! 이 나온다. 처음엔 IDA로 분석을 해보려했는데 Microsoft.NET assembly 파일인것 같아서 다른 도구를 사용해보기로 했다. Releases · dnSpy/dnSpy .NET debugger and assembly editor. Contribute to dnSpy/dnSpy development by creating an account on GitHub. github.com..

워게임/SuNiNaTaS 2024.03.19

[SuNiNaTaS] Challenge9 - 리버싱 / IDA

SuNiNaTaS 에서 제공하는 아홉번째 문제 리버싱으로 분류된 문제이다. 문제페이지에 들어가면 뭔가를 다운받도록 한다. 해당 파일은 zip 파일로 압축을 풀려면 비밀번호가 필요하다. 비번은 위에 나와있듯이 suninatas 이다. 안에는 Project1.exe 파일이 들어있다. 실행시키면 이렇게 작은 창이 뜬다. 뭔가를 입력하고 Click! 을 눌러봤는데 별다른 반응이 없었다. IDA라는 디스어셈블러를 이용해 해당 파일을 분석해봤다. 함수 목록을 살펴보는데 TForm1_Button1Click 가 보였다. 아마도 실행창에서 보이는 버튼을 눌렀을 때 실행되는 함수일 것이다. 해당 함수에 들어가서 f5를 눌러 수도코드를 살펴본다. 뭔가를 비교한 다음에 참이되면 Congratulation! 이라는 메세지 박스..

워게임/SuNiNaTaS 2024.03.13

[SuNiNaTaS] Challenge8 - 웹해킹 / Python

SuNiNaTaS 에서 제공하는 여덟번째 문제 웹해킹 문제이다. 문제페이지에 접속하면 이런 로그인 창이 나온다. id/pw를 알아내야할 것 같은 느낌이다. 다른 문제들처럼 주석으로 힌트가 있을것 같아 F12를 눌러 개발자도구에서 소스를 확인해봤다. 아이디는 admin 이고, 비밀번호는 0 ~ 9999 중 하나라고 한다. 상당히 친절한 문제이다. 간단하게 Brute Force 공격을 해서 비밀번호를 알아낼 수 있다. 먼저 어떻게 데이터가 전달되는지 확인한다. POST 메소드를 이용해 id 변수에 아이디를, pw 변수에 1111을 넣어서 보낸다. 다음으로 쿠키값을 알아내야 한다. Python requests 를 이용해 문제를 해결할건데, 이 문제 페이지는 로그인을 해야만 접근할 수 있으므로, 내 쿠기값을 쥐..

워게임/SuNiNaTaS 2024.03.07

[SuNiNaTaS] Challenge7 - 웹해킹 / Javascript

SuNiNaTaS 에서 제공하는 일곱번째 문제 웹해킹 문제이다. 문제페이지에 접속하면 가수 아이유님 사진과 함께 Do U Like girls? 라는 입력창이 보인다. 스크롤을 중간까지 내려보면 YES 라고 적힌 버튼이 있는데 이걸 눌러보면 너무 느리다는 알림창이 뜬다. F12를 눌러 개발자도구에서 소스를 보면 주석으로 더 빨리 하라는 힌트가 적혀있다. 저 버튼을 빠르게 눌러야 하나보다. 자바스크립트를 보면 F5나 탭(9) 또는 컨트롤 키와 함께 누르는 N, R 같은 건 못누르게 되어있다. 보이는것처럼 F5를 누르면 NO!라는 알림메세지가 뜬다. YES 버튼을 누르면 frm 폼이 post 메소드로 submit 되는데 문제를 해결하려면 이걸 빠르게 submit 시켜주면 된다. 개발자 도구의 콘솔 탭에서 fr..

워게임/SuNiNaTaS 2024.03.01

[SuNiNaTaS] Challenge6 - 웹해킹 / SQL Injection

SuNiNaTaS 에서 제공하는 여섯번째 문제 웹해킹 문제이다. 문제페이지에 들어가면 이런 간단한 게시판이 나온다. 첫번째 게시글인 Hint를 열어봤는데 suninatas 의 게시글을 읽으면 된다고 한다. 그래서 3번 게시글은 README를 읽으려고 봤더니 비밀번호가 걸려있는지 위와 같은 팝업이 떴다. 아래쪽에는 친절하게 비밀번호 조회하는 쿼리까지 남겨두었다. SQL 인젝션 문제라고 생각하고 가장 간단하게 ' or 1=1-- - 해봤는데 NO! hacking! 이라는 팝업이 떴다 몇번 더 시도해봤더니 = 이나 -, # 같은 특수문자에 필터링이 걸려있는듯 했다. ' 이나 or 같은 단어는 필터링이 걸려있지 않은것으로 보였다. = 를 대신할 수 있는 like 를 이용해서 위와 같이 쿼리를 날려주면 게시글의 ..

워게임/SuNiNaTaS 2024.02.24

[SuNiNaTaS] Challenge5 - 웹해킹 / Javascript

SuNiNaTaS 에서 제공하는 다섯번째 문제 웹해킹 문제이다. 문제페이지에 들어가면 이런 화면이 나온다. 뭔가 키값을 맞춰야 하는듯 하다. F12를 눌러 개발자도구를 확인해 봤다. eval 로 난독화된 자바스크립트 코드와 주석처리된 힌트가 보였다. 일단 난독화를 풀어봤다. https://lelinhtinh.github.io/de4js/ de4js JavaScript Deobfuscator and Unpacker lelinhtinh.github.io 난독화는 위 사이트에서 풀 수 있다. eval 코드를 복사 붙혀넣기 하면 이렇게 난독화가 해제된 자바스크립트를 확인할 수 있다. 그렇게 복잡해 보이지는 않는 코드인데 살짝 헷갈린다. 이럴땐 그냥 실행시켜 보면 된다. 개발자 도구의 콘솔 탭으로 가서 자바스크립..

워게임/SuNiNaTaS 2024.02.18

[SuNiNaTaS] Challenge4 - 웹해킹 / 헤더변조

SuNiNaTaS 에서 제공하는 네번째 문제 웹해킹 문제이다. 문제 페이지에 접속하면 이런 화면이 나온다. 포인트가 적혀있는 상자가 하나있고 아래쪽엔 User-Agent 라고 적혀있다. 아무래도 http request 헤더 중 하나인 User-Agent 의 값을 바꿔야 하나보다. F12를 눌러 개발자도구를 확인해보니 힌트가 있었다. 포인트를 50으로 만들고 User-Agent 값을 SuNiNaTaS 로 바꾸면 되는듯 하다. User-Agent는 버프스위트 같은 도구로 바꿀수도 있지만 크롬 확장프로그램을 이용해도 된다. ModHeader 라는 프로그램을 사용하면 된다. 설치도 아주 간단하다. 설치하면 크롬 맨 위에 아이콘이 생기는데 그걸 열어서 이렇게 원하는 값으로 적어주면 된다. User-Agent 값을..

워게임/SuNiNaTaS 2024.02.12

[SuNiNaTaS] Challenge3 - 웹해킹

SuNiNaTaS 에서 제공하는 세번째 문제 웹해킹 문제이다. 문제 페이지에 들어가면 이런 그림이 나온다. Write articles in Notice Board 라고 적혀있는데 처음엔 이 페이지 안에서 해결하는 줄 알고 한참 찾았었다. 알고보니 Suninatas 홈페이지의 진짜 공지사항 게시판에 글을 쓰라는 것이었다. 당연하게 공지사항 게시판은 일반 유저가 글쓸 수 있는 권한은 없다. 뭔가 취약점을 찾아야 하는데 힌트를 얻기위해 자유게시판으로 가봤다. 여기엔 Write 버튼이 있다. 버튼을 누르면 /borad/free/write 경로로 이동된다. 그럼 notice 도 똑같은 구조일거라 생각했다. 공지사항 페이지에서 URL 뒤에 write 를 붙혀적으면 공지사항을 작성할 수 있게 된다. 아무 글이나 작성..

워게임/SuNiNaTaS 2024.02.09

[SuNiNaTaS] Challenge2 - 웹해킹 / Javascript

SuNiNaTaS 에서 제공하는 두번째 문제 이젠 정말 웹해킹 스러운 문제이다. 문제페이지에 접속하면 이런 화면이 나온다. 시험삼아 admin / admin 이라고 입력해 봤는데 틀렸다는 알람창이 뜬다. F12를 눌러 개발자도구를 확인해 봤다. 사용자가 입력한 ID 와 PW는 각각 id 와 pw에 저장이 되고, 만약 id와 pw가 똑같은 값일 경우 방금 봤던 알람창이 뜨는 것이었다. 그리고 나서 id 와 pw 값을 초기화 해버리는데 만약 여기서 초기화 시키지 않고 else 에 있는 submit() 이 실행되면 다른 결과가 나올 것 같았다. 아까처럼 동일하게 admin / admin 을 입력해주고 개발자 도구의 콘솔 탭에서 document.web02.submit(); 이라고 쳐주면 플래그를 찾을 수 있다.

워게임/SuNiNaTaS 2024.02.03
반응형