PentesterLab의 Code Execution 01 문제에 대한 접근 방법을 기록페이지에 접근하면 name 파라미터로 전달받은 값을 출력한다.?name=쥬스몬보자마자 싱클/더블쿼터를 넣고싶어서 싱글쿼터(')를 넣어봤으나 출력에 포함된다🥸?name=쥬스몬'그렇다면
PentesterLab의 Code Execution 02 문제에 대한 접근 방법을 기록아래와 같이 이번 문제는 특정 테이블에 컬럼명을 이용하여 정렬할 수 있는 기능이 있는 페이지이다.이전 문제와 비슷하게 싱글/더블 쿼터를 입력했더니 묵직한 에러가 출력된다. 에러 내용을
PentesterLab의 Code Execution 03 문제에 대한 접근 방법을 기록이번 문제는 아래와 같이 정규식 패턴(pattern)을 입력받아 문자열(base)을 비교해 새로운 문자열(new)로 수정할 수 있는 페이지이다.특정 값을 입력받기에 에러를 유발시켜 에
PentesterLab의 Code Execution 04 문제에 대한 접근 방법을 기록이번 문제는 assert 함수를 사용하는 페이지로 name파라미터에 입력값을 출력해주는 페이지이다.이전 문제와 동일하게 싱클쿼터를 삽입하였더니 assert함수에서 Syntax에러가 발
PentesterLab의 File Include 문제에 대한 접근 방법을 기록문제 페이지에 접근하면 아래와같이 page 파라미터로 페이지를 입력받는다.싱글쿼터를 추가하여 고의적으로 syntax를 파괴하고 에러를 유발시키면 include구문에서 File not found
PentesterLab의 LDAP 문제에 대한 접근 방법을 기록첫번째 문제는 LDAP 로그인 인증을 우회하는 문제이다.이번 문제는 Null bind를 이용하라는 힌트가있어 Body로 전달되는 username과 password 파라미터에 각각 0x00을 삽입했더니 풀리지
PentesterLab의 SSRF 문제에 대한 접근 방법을 기록첫번째 문제는 아래와 같이 url 파라미터로 입력받는 url의 데이터를 가져와 출력해주는 페이지이다.싱글/더블쿼터는 국룰이여서 확인해보니 에러가 발생했으며, 사용되는 함수는 file_get_contents였
PentesterLab의 MongoDB Injection 02 문제에 대한 접근 방법을 기록이번 문제는 MongoDB에서의 Blind SQLi이다.MongoDB의 Document를 보면 쿼리형태를 확인할 수 있어 문제 해결에 도움이 될 수 있다.바로 문제를 확인하면 아
PentesterLab의 SSTI 문제에 대한 접근 방법을 기록SSTI(Server Side Template Injection) 공격은 서버측의 기본 템플릿 구문을 이용하여 악성 페이로드를 삽입하여 전달할 경우 서버 측에서 실행되면서 생기는 취약점이다.바로 SSTI 문
PentesterLab의 Json Web Token 문제에 대한 접근 방법을 기록이번 문제는 JWT를 사용하는 웹사이트에서 admin으로 권한 상승을 해야하는 문제이다.프록시로 패킷을 확인해보면 Cookie 헤더의 auth값으로 JWT가 들어있다. 일반적으로 JWT의
PentesterLab의 ObjectInputStream 문제에 대한 접근 방법을 기록이번 문제는 Java 객체를 사용하는 Spring으로 이루어진 웹 애플리케이션이다. 이 문제는 사용자로부터 전달되는 직렬화된 데이터를 역직렬화하는 과정에서 ObjectInputStre
PentesterLab의 Api to Shell의 풀이 과정을 기록문제 페이지에 접근하면 아래와 같이 API Documentation을 확인할 수 있다.Register API와 Login API에 접근하면 token이 부여된다.List of files API 접근할 경
PentestLab의 Play XML Entities 문제를 풀이이번 문제는 Play Framework의 XML External Entities 삽입 취약점에 대해 얘기한다.login페이지에서 로그인 패킷을 확인하면 아래와 같다.여기서 xml을 삽입하기 위해 Conte
JWT의 RS256 알고리즘을 사용할 경우 HS256으로 변경 가능함을 이용하여 공개키를 이용해 시그니처를 생성하는 방법에 대해 기록페이지에 접근 시 아래와 같이 Register, Login, Public Key를 확인할 수 있는 페이지가 존재한다.먼저 로그인을 한 후
웹사이트에서 .git이 노출될 경우 발생할 수 있는 취약점을 재현하는 과정을 기록첫번째 사이트에서는 /.git 디렉터리가 모두 노출된다.프레임워크 등을 통해 URL 매핑을 사용한다면 이러한 .git이 노출되지 않겠지만 늘 조심해야한다.게임 끝이다. wget 등의 도구를
JWT에서 kid(Key Identifier) 사용 시 발생할 수 있는 문제를 기록이번 문제의 핵심은 JWT에서 kid를 사용 시 전달되는 데이터는 알고리즘의 키값이 들어있는 path로 이번 문제에서 kid의 값은 0001이니 "/some-dir/0001"에 키값이 담
파일 업로드 기능이 있는 페이지에서 이미지 파일만 업로드가 가능할때 XSS로 연결될 수 있는 문제를 기록문제의 페이지에서는 이미지 파일을 업로드할 수 있는 기능이 있다.SVG 이미지는 이미지를 설명하는데 사용되는 XML파일이며, 확장이 가능하고 JPG/PNG/GIF 형
PentesterLab의 Java Serialize 01 문제를 해결하는 과정을 기록이번 문제는 아래와 같이 Base64로 인코딩된 Object를 입력받아 서버에 전달하고 서버는 Source code에 명시된 코드로 구현되어있다고 한다.Java 역직렬화 관련된 문제는
이번 포스팅에서는 Javascript 애플리케이션에서 발생할 수 있는 Prototype Pollution 취약점에 대해 기록한다.Prototype은 다른 객체에서 프로터티를 제공하는 객체이다. 모든 객체는 prototype이라는 내부 슬록을 가지며, 상속을 구현하는 P
사용자로부터 파일업로드를 통해 zip파일 등을 전달받아 unzip 후 사용자에게 보여주는 웹 애플리케이션에서 발생할 수 있는 symlink 취약점을 다룸아래 페이지와 같이 압축파일을 입력받아 사용자에게 표현하는 웹 애플리케이션이 있다./etc/passwd 파일을 심볼릭