[Forensic] [SuNiNaTaS] Forensic - 15
문제 메인페이지를 가면 음악을 좋아하냐며 힌트는 파일 안에 있다고 나온다. Play the Music 링크를 클릭하면 아래 플레이어와 함께 노래가 시작된다. 오른쪽의 점 3개를 눌러보면 파일을 다운받을 수 있다. 다운받은 음악파일의 속성을 확인했더니 지휘자 부분이 이상했다. GoodJobMetaTagSearch 라고 적혀있어서 일단 인증페이지에 입력해보았더니 문제가 풀렸다.
문제 메인페이지를 가면 음악을 좋아하냐며 힌트는 파일 안에 있다고 나온다. Play the Music 링크를 클릭하면 아래 플레이어와 함께 노래가 시작된다. 오른쪽의 점 3개를 눌러보면 파일을 다운받을 수 있다. 다운받은 음악파일의 속성을 확인했더니 지휘자 부분이 이상했다. GoodJobMetaTagSearch 라고 적혀있어서 일단 인증페이지에 입력해보았더니 문제가 풀렸다.
메인페이지에는 검은 화면에 KEY Finding이라는 문자열만 적혀있다. 소스코드를 확인해보니 프로그래머의 잘못된 소스 백업 습관이라고 적혀있다. 문제 메인화면에서 무언가를 시도해볼만한 곳은 URI 부분밖에 보이지 않는다. web13.asp 에서 확장자를 zip으로 바꾸었더니 web13.zip 파일이 다운받아졌다. 압축파일에는 암호가 걸려있고, 내부 파일을 보면 압축 비번은 4자리 정수라고 적혀있다. 패스워드 크랙을 시도하기 위해 ARCHPR 프로그램을 사용했다. 압축파일의 패스워드는 7642이다. 알아낸 패스워드로 압축을 풀었다. 압축 파일을 보면 사진 4장과 txt파일 1개가 존재한다. txt 파일의 내용이 있나 확인했더니 4개의 이미지를 합해서 key를 구하라고 적혀있다. 4개의 사진을 HxD로 옮..
파일을 다운받으면 이번에는 압축파일 해제시 패스워드가 필요없다. 해당 Project1.exe 파일을 x32dbg에서 분석할 수 있다. 프로그램을 실행하면 다음과 같은 창을 볼 수 있다. 가장 먼저 문자열을 확인하였고, 분석해볼만한 문자열을 발견했다. 문자열이 일부 깨져보여서 BinText를 사용해 한번 더 확인했다. Authkey : 이후에 나오는 문자열들을 입력 해 보았다. 00000004F8B8 0000004504B8 0 2abbe4b6 00000004F8CC 0000004504CC 0 44536ca0 00000004F8E0 0000004504E0 0 81aae922 00000004F8F4 0000004504F4 0 e32fa0de 2abbe4b644536ca081aae922e32fa0de 2abbe..
파일을 다운받으면 이번에는 압축파일 해제시 패스워드가 필요없다. 해당 reversing.exe 파일을 x64dbg에 올려두었더니 아래와 같은 화면이 보이며, 실행되었다. 아무 값이나 넣어보고 OK 버튼을 누르면 아래와 같은 창이 뜬다. 실행된 프로그램 화면에서 M@de by 2the TOP 의 문자열이 보이는 것을 보고 그 부분 근처를 확인하기로 했다. 디버거로 문자열을 확인했을때 너무 방대하고, 보기가 불편해서 BinText 프로그램을 사용하여 확인했다. Authkey : Did U use the Peid? 라는 문자열이 보여서 일단 인증 페이지로 가서 입력해보았다. 리버싱 시 사용하는 프로그램인 PeID 프로그램을 썻냐고 물어보는 의미인데, PeID는 패킹된 방식을 확인할 수 있는 프로그램이다. 문제..
파일을 다운받으면 패스워드가 걸려있는 압축파일을 볼 수 있다. 압축파일의 패스워드는 문제 화면에 보이는 suninatas를 입력했더니 풀렸다. 안에는 실행 프로그램 하나가 존재한다. 설치 직후에는 윈도우 내 디펜더가 악성파일로 감지해서 격리시켜버리니 허용을 해주어야 한다… 해당 프로그램을 디버거에서 열어주고 문자열이 존재하는지 우선 확인했다. 아래와 같은 문자열들을 발견할 수 있었다. 해당 문자열이 있는 근처에서 분석하기 위해 우클릭으로 디스어셈블리어에서 따라가기 기능을 사용했다. SuNiNaTaS, Congratulation! 문구가 오는 부분을 확인하였다. 두 문장쪽의 명령문을 보면 45039C, 4503A8 주소가 적혀있어서 해당 위치로 가보았다. 45039C가 바로 적혀있지는 않기때문에 45038..
문제 페이지를 들어가면 로그인하는 화면이 나타난다. 소스코드를 확인해보면 힌트로 admin의 패스워드는 0-9999라고 한다. 패스워드의 범위가 지정되어있다면 Brute Force 공격이 편하지 않을까 하고 Burp Suite를 사용하여 Brute Force 를 시도했다. 위의 패킷을 Intruder로 전송하여 Payload를 설정 후 공격을 실행했다. Positions 탭에서 패스워드 부분을 변수로 지정후 Payload를 설정했다. 너무 오래걸려서 범위를 찾아두고 지정했다. 패스워드 값이 7707일 때 응답 시간에 차이가 있었다. admin/7707로 로그인을 했더니 축하한다는 메세지 창과 인증키가 출력되었다. l3ruteforce P@ssword l3ruteforce P@ssword 라는 인증키를 얻..
문제를 들어가서 Download 버튼을 누르면 아래와 같은 evidence.tar 압축파일이 다운받아진다. 다운받은 파일의 내용은 아래와 같다. 눈여겨볼만한 부분은 아래와 같다. ===shadow 파일 root:$6$E2loH6yC$0lcZ0hG/b.YqlsPhawt5NtX2jJkSFBK6eaF/wa46d8/3KPs6d45jNHgNoJOl7X1RsOrYsZ.J/BBexJ93ECVfW.:15426:0:99999:7::: suninatas:$6$QlRlqGhj$BZoS9PuMMRHZZXz1Gde99W01u3kD9nP/zYtl8O2dsshdnwsJT/1lZXsLar8asQZpqTAioiey4rKVpsLm/bqrX/:15427:0:99999:7::: ===passwd root:x:0:0:root:/root:/b..
소스코드 확인 후 눈에 띄는 코드와 힌트가 아래와 같이 적혀있다. 문제 페이지를 내리다보면 버튼이 있고, 버튼 클릭 시 아래와 같은 창이 뜬다. 위에서의 소스코드를 해석해보았다. keyCode 116, 9, 78, 82 가 어떤 키인지 찾아보았다. 116 : F5 9 : Tab 78 : n 82 : r F5나 Tab을 누르면 ‘No!’라는 팝업창이 뜨고 false를 반환한다. 또한 Ctrl을 누르며 n이나 r을 울러도 ‘No!’라는 팝업창이 뜨며 false를 반환한다. 버튼은 무슨 역할을 하는지 보기 위해 다시 소스코드를 봤더니 web07_1.asp로 이동시키는 것을 볼 수 있었다. 아래의 코드는 form의 전송 방식은 post 이동 혹은 데이터를 보내는 페이지인 web07_1.asp form의 이름은 ..
게시판의 글들을 확인해보면 힌트나 사용할 사이트들이 게시글로 나온다. 아래 글은 힌트에 대한 내용으로 써니나타스 글들을 보라는 내용이다. https://md5hashing.net/ 링크가 나와있다. README 게시글은 클릭 시 아래 창이 열린다. 아래 글은 별 내용 없어보인다. README 클릭 시 열리는 창은 패스워드를 입력하라고 적혀있고 하단에는 SQL문이 적혀있다. select szPwd from T_Web13 where nIdx = '3' and szPwd = '"&pwd&"' T_Web13 테이블의 컬럼에서 nIdx 값은 3, szPwd 값은 &pwd&인 szPwd를 찾는다고 해석할 수 있다. SQL이 나오는 걸 보고 SQL 인젝션 문제라고 생각하고 있다. SQL 인젝션의 문제중 가장 먼저 시..