분류 전체보기
Root Me: XSS - Stored 1
문제를 보면 form이 있는 평범한 웹페이지가 나온다. XSS와 관련이 있을거라는 생각에 스크립트를 넣어본다. 이 코드가 작동이 된다면 이 웹페이지는 사용자가 script를 삽입할 수 있다. 잘 된다. 따라서 이 웹 페이지에 적절한 코드를 삽입하면 Admin의 정보를 얻을 수 있다. 또한, 시간이 좀 지나면 내가 올린 글을 읽었다는 알림이 나온다. 즉, Admin이 이 웹페이지에 들어와 내가 쓴 메시지를 봤다. 이 Admin의 세션 쿠키를 탈취해야 하므로 Admin이 접속을 했을 때 다른 사이트에 접속하게 만들어 해당 세션 쿠키를 얻어야 한다. 따라서 img를 이용한다. img를 이용하는 이유는 img태그에 있는 src때문이다. 누군가 웹 페이지에 접속하여 img를 로딩해야 한다면 src에 있는 링크에 ..
Source Map이란?
Source Map 배포용으로 빌드한 파일과 원본 파일을 서로 연결시켜주는 기능 보통 서버에 배포를 할 때 성능의 최적화를 위해 파일들을 압축하게 된다. 하지만 압축을 하게 되면 배포한 파일에서 오류가 발생하게 되는 경우 디버깅이 어렵다. 오류가 발생한 부분이 원본 파일(코드)의 어느 부분인지 쉽게 알 수 있도록 사용하는 것이 Source Map이다. 2022.03.09 - [Root Me/Web - Client] - Root Me: Javascript - Webpack Root Me: Javascript - Webpack 힌트가 Webpack에 대해 아냐고 물어본다. 문제에 들어가보면 오리와 만다린 오리의 차이점을 모른다면 부끄러워 하라고 한다. 사이트는 정상적으로 작동하고 있다. 페이지 원본을 통해..
Root Me: Javascript - Webpack
힌트가 Webpack에 대해 아냐고 물어본다. 문제에 들어가보면 오리와 만다린 오리의 차이점을 모른다면 부끄러워 하라고 한다. 사이트는 정상적으로 작동하고 있다. 페이지 원본을 통해 JS파일들에 접근해보면 난독화가 된 것 같은 코드들만 빽빽하게 작성되어있다. 코드를 이쁘게 정리해서 봐도 별 내용은 없어보인다. 페이지의 소스를 보기 위해 검사 -> 소스로 이동하여 이 사이트를 이루고 있는 코드를 봐도 아까와 같은 내용밖에 없다. 하지만 소스 탭의 밑부분에 있는 webpack:// 를 보면 페이지의 원본 코드를 볼 수 있다. src/component의 YouWillNotFindThisRouteBecauseItIsHidden.vue를 열어보면 flag를 찾을 수 있다. 추가적으로 여기 적혀있는 내용을 살펴보면..
Root Me: Javascript - Native code
문제에 들어가자마자 입력 창이 나온다. 습관적으로 페이지 원본 보기에 들어가서 코드를 본다. 난리가 났다. 이상한 코드가 script태그에 들어가있다. 이 코드를 원래대로 돌려야 할 것 같다. toString()을 통해 문자열로 바꿔준다. (처음에 그냥 하면 안되고 마지막의 ()를 지워야 제대로 작동하는데 이유는 잘 모르겠다... ()를 포함한 상태로 toString()을 하게 되면 코드가 실행되어 입력하라는 알림이 다시 나오게 된다) toString()을 사용하고 난 후 if문의 조건을 보면 key값이 있다.