본문 바로가기

wargame/suninatas

[suninatas]challenges 05 모든 포스트 목록 challenges 05 5번 문제 소스를 확인하면 충격적인 비주얼의 eval 함수와 hint를 확인할 수 있다. 처음에는 eval 함수를 해석해보려 했는데 너무 어려웠다. 찾아보니까 자바스크립트를 읽기 어렵게 만드는 기법이 있다는 것을 알았다. 복호화 사이트에서 복호화하니 다음의 깔끔한 코드가 나왔다. 개발자 도구를 이용해서 hint 값을 넣었다. 문제 해결! +) 자바스크립트 난독화 클라이언트에서 확인할 수 있는 자바스크립트 코드를 읽을 수 없게 암호화하는 것 이 사이트에서 다양한 난독화 기법을 확인할 수 있다.
[suninatas]challenges 04 모든 포스트 목록 challenges 04 문제 Point와 user-agent가 보인다. 그리고 코드를 확인해보면 Hint : Make your point to 50 & 'SuNiNaTas' 라고 뜬다. Plus 버튼 클릭하면 값이 증가한다. 내가 임의로 조작할 수 없다. 만약 25번 이상을 누른다면 다음과 같이 I like the SuNiNaTas browser가 뜬다 그럼 browser를 변경하면 되므로 User-Agent 값을 변경하면 된다. User-Agent를 변경할 수 있는 Chrome 확장프로그램을 깐다. 변경하고 문제 화면으로 돌아가 아래와 같이 변경한다. 그럼 26이 된다 계속 누르기 귀찮아서 자바스크립트 코드 짬 근데 1밖에 안 증가해서 그냥 누름 이렇게 하면 문제 해결 인증키가 나오..
[suninatas]challenges 03 모든 포스트 목록 challenges 03 문제 코드는 눈 여겨볼 부분이 없다 그래서 진짜로 공지 게시판에 글쓰기를 하려고 했다. 근데 글쓰기 버튼 없음 글쓰기 페이지를 write라고 가정하고 url을 입력했다 아무렇게나 입력하고 submit하면 끝
[suninatas]challanges 02 모든 포스트 목록 challenges 02 문제 페이지 소스의 일부를 가져왔다. Hint를 보면 id와 pw가 같으면 문제를 해결할 수 있는 것 같다. 하지만 join 버튼을 눌러 chk_form()을 실행하면 다시 id, pw가 초기화되어 원점으로 돌아온다. 자바스크립트 관련해서 검색해보니 XSS 기법, 프록시 툴을 이용해서 값을 변조시키는 방법 등이 있었다. 이 문제에는 프록시 툴이 효과적일 거라 판단하여 burp suite를 이용해서 문제를 풀기로 했다. 우선 프록시 설정을 해야 한다. 크롬에서 설정에 들어가 프록시 설정 열기를 클릭한다. 연결 > LAN 설정을 클릭한다. 프록시 서버를 클릭하고 다음과 같이 설정한다 기존에 설치했던 burp suite를 실행하고 id와 pw를 아무렇게나 입력하고 j..
[suninatas]challenges 01 모든 포스트 목록 challenges 01 문제 처음에는 를 PHP로 착각했는데 ASP의 스크립틀릿이라는 것을 알았다. 이를 바탕으로 ASP의 함수를 공부했다. replace(str, from_str, to_str) : str에서 from_str을 to_str으로 바꿔 반환하는 함수 mid(str, pos, len) : str을 pos번째부터 len 길이만큼의 문자를 반환하는 함수 & : 연결연산자, 문자열을 합침 위의 문제는 즉 str에서 a를 aad로 바꾸고 i를 in으로 바꾼뒤 두 번째 글자부터 아홉 번째 글자까지 자르고 그 값이 admin과 같다면 pw를 출력한다는 뜻이다. 우선 admin이 나오기 위해 aad와 in을 거꾸로 바꾸면 (a)admin → ami가 된다. aadmin은 9글자가 되지..