목록Web (72)
김승현
접속해보자. inspector랑 문제랑 뭔가 비슷해보인다. 일단 소스코드를 확인해 보자. html엔 역시 1번이 있고, css엔 2번 파트가 있고, js는 이번엔 좀 다르다. 구글에서 인덱싱하는 걸 막기 위해서 어떻게 해야 되나요? 아마도 flag가 있는 곳의 힌트를 주는 것 같다. 이건 robots.txt에서 저 역할을 하기에 robots.txt로 가보자. url 끝에 /robots.txt를 넣으면 이렇게 flag의 파트3를 알려준다. 근데 끝에 }가 아닌 걸 봐선 더 있나보다. 이건 apache server라는 것 같은데 다음 flag를 access해서 찾으라고 한다. apache에서 디렉토리를 관리하는 게 .htaccess인데 여기로 가보자. 주소/.htaccess로 가보니 4번 파트를 주는데 이번..
접속하면 이런 화면을 볼 수 있다. 문제 이름 그대로 한 번 조사해보자. 개발자도구 - sources를 보면 html(index.html), js, css가 있다. 하나하나 확인해보자. html엔 picoCTF{tru3_d3라는 flag값이 있고, css엔 중간 flag값인 t3ct1ve_0r_ju5t이 있고, js엔 마지막 flag값인 _lucky?f10be399}이 있다. 잘 조합하면 picoCTF{tru3_d3t3ct1ve_0r_ju5t_lucky?f10be399}
접속하면 이런 모습을 볼 수 있다. cookie문제니까 쿠키 값부터 확인해보자. name이 -1로 설정되어 있다. 1로 바꿔보자. 각 쿠키값엔 하나의 쿠키가 대응되는 것 같다. 숫자를 늘려가며 flag를 찾아보자, 짠 18번에 flag가 위치함을 알 수 있다.
GET과 HEAD의 경우 메서드인데 메서드 관련 문제인 것 같다. 일단 접속해보자. choose red와 choose blue버튼이 있다. 현재는 red이고 주소를 보면 끝에 ?가 붙어있다. 일단 choose blue를 눌러보자. 주소에 ?가 사라졌고 배경색이 파랗게 변했다. burp로 패킷을 일단 잡아보자. request 패킷 response 패킷 일단 request 패킷의 get 메서드를 head로 바꿔보자. 짠
이번 문제는 설명이 긴데 그냥 다른 툴이나 그런 걸 그대로 가져다 써서 취약점이 발견되는 경우도 많고 뭐 그냥 admin으로 로그인 하라는 내용이고 test/Test123!로 임시 로그인 해볼 수 있다고 한다. 접속해보자. 접속하면 이런 로그인창이 뜬다. test/Test123!로 로그인 해보자. testing page에 접속은 했지만 아무것도 볼 순 없다고 한다. cookie 값도 확인 해보자. 토큰이라는 이름으로 쿠키 값이 하나 있다. eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdXRoIjoxNjg0ODI0MDIxNjg1LCJhZ2VudCI6Ik1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0L..
그냥 플래그를 찾는 문제인 것 같다. 난독화란 무엇인가라는 힌트가 있고 아마 난독화된 내용을 해독하면 되는 것 같다. 일단 접속해보자. 접속해보면 대충 이런 화면이 나온다. 난독화 내용이 나왔으니까 소스코드 확인부터 해보자. 자바스크립트로 난독화가 된 것 같은 내용이 있었다. 그냥 1자로 쭉 적혀있는데 자바스크립트를 예쁘게 고쳐주는 사이트가 있다. Online JavaScript beautifier Online JavaScript beautifier Beautify JavaScript, JSON, React.js, HTML, CSS, SCSS, and SASS beautifier.io 위의 사이트로 이동해서 고쳐보자. 이런 식으로 코드가 나왔다. 개발자도구 - console을 통해 해석해보자. 순서를 잘..
웹 어딘가에 flag가 있다고 한다. 일단 접속해보자. 접속하면 이런 화면을 볼 수 있고, 아래엔 대충 이런 입력창도 있다. 입력창에 싱글쿼터(')나 javascript도 넣어서 send해봤는데 딱히 반응은 없었다. 그러다가 문제 이름에 roboto ~ 이런 거였던 게 기억이 나서 robots.txt를 확인해봤다. ==으로 끝나는 문자열이 있는데 ==는 base64로 인코딩된 거이다. 한 번 디코딩 해보자. 이런 path가 나왔고 주소창에 입력해보자. 짠
Irish-Name-Repo 1과 2에 이어서 3편이다. [PicoGym] Irish-Name-Repo 1 웹사이트에서 로그인을 해보라는 문제인 것 같다. 접속하면 이렇게 사람들 얼굴이 뜨고 왼쪽 위에 메뉴창이 있다. 메뉴를 눌러보자. 누르면 이렇게 close Menu, Support, Admin Login페이지가 뜬다. 당연 kshind.tistory.com [PicoGym] Irish-Name-Repo 2 이전 문제와 비슷한 것 같다. 접속해보자. vvvv Irish-Name-Repo 1문제 링크는 여기 vvvv [PicoGym] Irish-Name-Repo 1 웹사이트에서 로그인을 해보라는 문제인 것 같다. 접속하면 이렇게 사람들 얼굴이 뜨고 왼 kshind.tistory.com 일단 힌트부터 읽어..
이전 문제와 비슷한 것 같다. 접속해보자. vvvv Irish-Name-Repo 1문제 링크는 여기 vvvv [PicoGym] Irish-Name-Repo 1 웹사이트에서 로그인을 해보라는 문제인 것 같다. 접속하면 이렇게 사람들 얼굴이 뜨고 왼쪽 위에 메뉴창이 있다. 메뉴를 눌러보자. 누르면 이렇게 close Menu, Support, Admin Login페이지가 뜬다. 당연 kshind.tistory.com 바로 Admin Login 페이지로 넘어가보자. (admin login 등 처음 보는 개념이라면 위의 주소로 갔다 와보자) 딱히 다른 게 없어 보인다. ' or 1=1 -- 위의 쿼리문을 입력해보자. 그랬더니 SQLi가 감지됐다고 한다. username 부분을 고쳐가면서 검사하는 부분을 확인해보자..
웹사이트에서 로그인을 해보라는 문제인 것 같다. 접속하면 이렇게 사람들 얼굴이 뜨고 왼쪽 위에 메뉴창이 있다. 메뉴를 눌러보자. 누르면 이렇게 close Menu, Support, Admin Login페이지가 뜬다. 당연히 Admin Login으로 가보자. 그냥 가볍게 SQL Injection을 해보면 될 것 같다. ' or 1=1 -- 위와 같이 입력해보자. 아주 간단하게 문제가 풀렸다. 300점 치곤 난이도가 진짜 너무 쉽다. 아마 이름 보고 어려워 보여서 안 푼 건가..? 사실 내가 어려워 보여서 손 안 대던 문제긴 하다.