본문 바로가기

해킹/웹해킹

[HACKCTF] - 가위바위보

사이트에 들어가면 다음과 같은 사진이 뜬다. 그 후에 가위바위보를 하는데, 별로 중요해 보이지는 않는다.

왼쪽 위에 설정을 하는 부분이 있는데, 이를 누르게 되면,

위와 같이 나온다. 사실 잘 모르겠어서 인터넷을 찾아봤는데, 여기다가 쉘을 업로드할 수 있다고 한다. 그러니까 순서대로, 

1. 파일업로드
2. 업로드한 파일의 주소 찾기
3. 접근

의 3단계로 진행하면 된다. 우선 쉘을 업로드하겠다.

참고로 웹shell은 아래와 같이 구성된다.

의외로 간단하다. 맨 앞의 8byte는 png의 file signature로, png의 앞부분을 가리켜서, 위 문제에서 사진파일 검사를 우회한다. 그 후 php의 system 함수를 사용하여 웹쉘을 올릴 수 있다.

그 후에는 웹쉘에 접근하기 위해 웹쉘의 경로를 알아야 한다. 위의 사진에 우클릭을 하여 src 옵션을 보게 되면, 

위와 같이 뜨게 되는데 HLe4s는 위에서 변경해줄 수 있었던, user name이다.

그러면 웹쉘의 경로를 알았으니 접근만 해주면 되는데, 접근하기 전에 웹쉘의 확장자가 .php가 되어야 실행을 할 수 있게 된다. 그러므로, user name을 ~~.php로 바꿔준다. 

그래서 위의 주소로 접근하고, cmd에 ls를 전달하게 되면

다음과 같이 웹쉘을 따게된다. 여기서 flag.php때문에 헷갈렸는데, 얘는 flag가 아니다.( 누가 업로드 해둔거야...)

웹 쉘에 순서대로, cd ..; ls; cat flag.txt를 주면 flag.txt를 읽어서 문제를 해결할 수 있다.

'해킹 > 웹해킹' 카테고리의 다른 글

웹해킹 - SOP와 CSRF  (0) 2021.05.02
JAVA SCRIPT - Window 객체  (0) 2021.03.28
[HACKCTF] Home  (0) 2021.03.21
[웹해킹] HACKCTF - Input Check  (0) 2021.03.14
[웹해킹] HACKCTF - TIME WriteUp  (0) 2021.03.14