본문 바로가기

HACKING_GAME/WEB15

root-Me#7 Node.js Eval root-Me Node.js Eval을 풀고 싶으신가요? Do you want to solve root-Me Node.js Eval? [ root-Me#6 Node.js Eval ] Table of contents #0 Concept #1 Problem #2 How to Solve #3 Conclusion #0. Concept eval() 란? 인자값으로 들어간 Javascript 코드를 실행하는 함수 #1. Problem 네? 뭐라구여?ㅎㅎ 구글 감사해요~! #3. How to solve 문제에 eval()이라고 써있으니 바로 감이 싹 옵니다. Input 에 javascript 코드를 삽입합니다. - TEST 공격 가능 테스트를 위해 응답 프로세스를 종료하고 공격자가 입력한 문자열 "asdf"을 반환하.. 2021. 4. 8.
root-Me#6 Graphql root-Me Graphql을 풀고 싶으신가요? Do you want to solve root-Me Graphql? 레고레고 Let's make it happen~! [ root-Me#6 GraphQL ] Table of contents #0 Concept #1 Problem #2 How to Solve #0. Concept Reference https://the-bilal-rizwan.medium.com/graphql-common-vulnerabilities-how-to-exploit-them-464f9fdce696 #1. Problem #3. How to solve 1. GraphQL을 통해 질의할 수 있는 query, mutation 찾기 {"query":"\n query IntrospectionQ.. 2021. 1. 4.
root-Me#5 SQL Injection - Routed root-Me SQL Injection - Routed을 풀고 싶으신가요? Do you want to solve root-Me SQL Injection - Routed? 레고레고 Let's make it happen~! [ root-Me#5 SQL Injection - Routed ] Table of contents #0 Concept #1 Problem #2 How to Solve #0. Concept Mysql에서 select 0x31206F722074727565202D2D20 란? Mysql에서 select 0x31206F722074727565202D2D20 의 결과는 문자열 "1 or true -- "이다. #1. Problem SQL Injection - Routed / admin 비밀번호를 찾.. 2020. 12. 20.
root-Me#4 Revoked Token - JWT root-Me Revoked Token - JWT을 풀고 싶으신가요? Do you want to solve root-Me Revoked Token - JWT? 레고레고 Let's make it happen~! [ root-Me#4 Revoked Token - JWT ] Table of contents #0 Concept #1 Problem #2 How to Solve #0. Concept JWT 란? 인증을 위해 base64로 암호화된 3개의 값으로 구성된 token이다. +3가지 구성(Header(Data), Payload(Algorithm), 서명(Algorithm에 의해 암호화된 Data)) @ 란? python에서 '@'은 decorator라고 불리며, 함수에 부가 기능(ex, jwt 인증)을 간.. 2020. 12. 14.
root-ME#2 Java Server-side Template Injection [ 문제 ] 인증 패스워드파일인 SECRET_FLAG.txt 를 획득하기 위해서 취약점을 Exploit해 Template란? web page, email을 통해 나타나지는 동적인 데이터를 나타내기 위해 사용되는 web app ​ [ 기능 ] 공격자가 삽입 가능한 input data가 output data내 포함 원인은 public class Execute 로 인한 shell 실행 가능 Freemarker template engine 이 외부 command 실행 기능이 있다고 가정했을때, process 생성하고 결과를 output으로 삽입가능하다 ​ 위의 template 문구를 갖다 붙여넣으면 바로 실행 가능 ​ +Wappalyzer를 이용하여 Freemarket 환경 정보 획득이 가능하다면 앞으로 시도할.. 2020. 7. 24.
root-me#1 Local File Inclusion - Double encoding 0. 개념 LFI(=Local File Inclusion) ? 조작된 user input을 전송하여 서버 응답 값 내 서버 파일 내용을 포함시키는 취약점입니다. Double encoding란? 글자 그대로 두번 URL encoding된 문자열, Double encoding을 이용하여 공격 구문 필터링 우회 가능합니다~! 예시 ) 서버 다운로드 취약점 필터링으로 상위 폴더 접근 구문인 "../" 적용시의 USER INPUT 에 결과는 아래와 같습니다. 1) URL.decoding(%2e%2e%2f) -> "../" 2) URL.decoding(%252e%252e%252f) -> "%2e%2e%2f" 여기서 2)를 통해 "../" 구문 필터링은 우회 가능합니다. Webserver안에 여러 인코딩 문자열 수용.. 2020. 7. 13.