분류 전체보기
-
[WEB] simple-ssti 문제풀이 SSTI(Server Side Template Injection) 취약점은 공격자가 서버 측의 기본 템플릿 구문을 이용하여 악성 페이로드를 삽입한 다음 서버 측에서 실행되면서 생기는 취약점이며 웹 템플릿 엔진마다 사용되는 페이로드가 다르다.. 템플릿 언어란 언어의 변수 및 문법을 html 안에서 쓸 수 있도록 제공해주는 언어이다. django의 경우는 파이썬과 html을 같이 사용할 수 있다. 이런 템플릿을 이용하면 간단하면서 동적인 페이지를 만들 수 있다. flask의 jinja2 문법을 사용할 경우 {{..}} 형태의 템플릿을 사용한다. {{7*7}}이 템플릿 언어로 삽입되면 49라는 결과 값을 출력한다. 아래 사진은 통용적인 템플릿 언어를 사용하면서 서버 측..
[dreamhack] simple-ssti 문제풀이[WEB] simple-ssti 문제풀이 SSTI(Server Side Template Injection) 취약점은 공격자가 서버 측의 기본 템플릿 구문을 이용하여 악성 페이로드를 삽입한 다음 서버 측에서 실행되면서 생기는 취약점이며 웹 템플릿 엔진마다 사용되는 페이로드가 다르다.. 템플릿 언어란 언어의 변수 및 문법을 html 안에서 쓸 수 있도록 제공해주는 언어이다. django의 경우는 파이썬과 html을 같이 사용할 수 있다. 이런 템플릿을 이용하면 간단하면서 동적인 페이지를 만들 수 있다. flask의 jinja2 문법을 사용할 경우 {{..}} 형태의 템플릿을 사용한다. {{7*7}}이 템플릿 언어로 삽입되면 49라는 결과 값을 출력한다. 아래 사진은 통용적인 템플릿 언어를 사용하면서 서버 측..
2021.06.20 -
- user name과 database 간의 관계를 찾아보자. - Start - USER 이름을 입력하고 LOGIN 버튼을 누르면 user 이름 별로 게시판에 접속 된다. - 문제에서 USER name 과 database 간의 관계를 찾으라고 했으니, 여러가지 USER name을 입력해 보자. - 'admin' 입력 시, 접속이 제한된다. - 입력 도중 특정 특수문자(/) 입력 시, 에러 발생 확인 - 데이터베이스 파일을 열 수 없다는 에러 내용 - 사용자 이름 별로 데이터베이스 파일이 저장되는 것으로 보인다. - 파일 경로 : ./db/wkrm_사용자이름.db - 위 경로를 요청하면 데이터베이스 파일을 다운로드 할 수 있게 된다. - 제한되어 있는 admin 데이터베이스 파일을 다운로드 해보자. - w..
Wargame - DB is really GOOD- user name과 database 간의 관계를 찾아보자. - Start - USER 이름을 입력하고 LOGIN 버튼을 누르면 user 이름 별로 게시판에 접속 된다. - 문제에서 USER name 과 database 간의 관계를 찾으라고 했으니, 여러가지 USER name을 입력해 보자. - 'admin' 입력 시, 접속이 제한된다. - 입력 도중 특정 특수문자(/) 입력 시, 에러 발생 확인 - 데이터베이스 파일을 열 수 없다는 에러 내용 - 사용자 이름 별로 데이터베이스 파일이 저장되는 것으로 보인다. - 파일 경로 : ./db/wkrm_사용자이름.db - 위 경로를 요청하면 데이터베이스 파일을 다운로드 할 수 있게 된다. - 제한되어 있는 admin 데이터베이스 파일을 다운로드 해보자. - w..
2021.06.20 -
어떤한 기능을 가진 페이지인지는 한번에 파악을 못 했지만, 힌트로 SQL Injection 문제라고 알려주고 있다. HTML 코드를 살펴봤지만 힌트로 보이는 것은 없었다. 그래서 나는 일단 값을 보내서 어떤 결과를 출력하는지 살펴봤다. 1을 보내니, Result 값으로 1이 출력되었다. 1말고 다른 정수들을 넣어봤지만, 결과는 0이 출력되었다. 아마 False 값으로 0이 출력되는 듯하다. True로 만들어서 보내니, 1이 출력되었다. 일단 직접 확인한 테이블 안에 있는 no는 1밖에 없는 것으로 보인다. SQLi을 진행하기 전에 필터링되는 문자들을 찾아봤다. 직접 손으로 테스트를 해보니, 공백, =, like, >, >>', columnName) return columnName url = 'https:..
[Webhacking.kr] Old - 13 Write Up어떤한 기능을 가진 페이지인지는 한번에 파악을 못 했지만, 힌트로 SQL Injection 문제라고 알려주고 있다. HTML 코드를 살펴봤지만 힌트로 보이는 것은 없었다. 그래서 나는 일단 값을 보내서 어떤 결과를 출력하는지 살펴봤다. 1을 보내니, Result 값으로 1이 출력되었다. 1말고 다른 정수들을 넣어봤지만, 결과는 0이 출력되었다. 아마 False 값으로 0이 출력되는 듯하다. True로 만들어서 보내니, 1이 출력되었다. 일단 직접 확인한 테이블 안에 있는 no는 1밖에 없는 것으로 보인다. SQLi을 진행하기 전에 필터링되는 문자들을 찾아봤다. 직접 손으로 테스트를 해보니, 공백, =, like, >, >>', columnName) return columnName url = 'https:..
2021.06.16 -
[WEB] web-misconf-1 문제풀이 문제를 확인해보자. 기본 설정을 사용한 서비스에 로그인 후 Organization에서 플래그를 확인하라고 한다. 접속해보자. 나는 계정을 모른다. 기본 설정을 사용하는 서비스라고 했으니, 혹시 default 계정이 있는지 구글링을 해보자. 초기계정은 admin/admin 이라고 한다. 접속해보자. 로그인이 성공했다. 그럼 Organization 을 확인해봐야한다. 한국말로 해석하면 조직이다. 번역기 돌렸다. 조직 관련된 내용이 있는지 메뉴를 다 뒤져보자. 경로는 server admin > setting > auth.anonymous > org_name 이다. 왜 여기에 플래그가 있었으며, 티오리 형님이 왜 여기다가 플래그를 뒀는지는 모르겠다. 플래그가 나왔지만..
[dreamhack] web-misconf-1 문제풀이[WEB] web-misconf-1 문제풀이 문제를 확인해보자. 기본 설정을 사용한 서비스에 로그인 후 Organization에서 플래그를 확인하라고 한다. 접속해보자. 나는 계정을 모른다. 기본 설정을 사용하는 서비스라고 했으니, 혹시 default 계정이 있는지 구글링을 해보자. 초기계정은 admin/admin 이라고 한다. 접속해보자. 로그인이 성공했다. 그럼 Organization 을 확인해봐야한다. 한국말로 해석하면 조직이다. 번역기 돌렸다. 조직 관련된 내용이 있는지 메뉴를 다 뒤져보자. 경로는 server admin > setting > auth.anonymous > org_name 이다. 왜 여기에 플래그가 있었으며, 티오리 형님이 왜 여기다가 플래그를 뒀는지는 모르겠다. 플래그가 나왔지만..
2021.06.15 -
[WEB] php-1 문제풀이 LFI(Local Include Inclusion) 취약점 이란 공격 대상 서버에 위치한 파일을 포함시켜 읽어오는 공격을 말한다. 특수문자 필터링 혹은 디렉터리 권한 설정이 적절하지 않을 때 LFI 취약점이 발생할 수 있는데 예를 들어 filename 파라미터 값에 ../../../../etc/passwd와 같은 값을 넘겨주면 해당 파일을 include 할 수 있다. inculde() 함수 외에도, include_once(), require(), require_once(), file_get_contents() 등의 함수로부터 해당 취약점이 발생할 수 있다. PHP Wrapper란 파일 시스템 함수와 함께 사용하기 위한 다양한 URL 스타일 프로토콜을 내장 wrapper가 제..
[dreamhack] php-1 문제풀이[WEB] php-1 문제풀이 LFI(Local Include Inclusion) 취약점 이란 공격 대상 서버에 위치한 파일을 포함시켜 읽어오는 공격을 말한다. 특수문자 필터링 혹은 디렉터리 권한 설정이 적절하지 않을 때 LFI 취약점이 발생할 수 있는데 예를 들어 filename 파라미터 값에 ../../../../etc/passwd와 같은 값을 넘겨주면 해당 파일을 include 할 수 있다. inculde() 함수 외에도, include_once(), require(), require_once(), file_get_contents() 등의 함수로부터 해당 취약점이 발생할 수 있다. PHP Wrapper란 파일 시스템 함수와 함께 사용하기 위한 다양한 URL 스타일 프로토콜을 내장 wrapper가 제..
2021.06.15 -
안녕하세요 어느덧 문제의 절반을 지나 6번 문제풀이가 되었네요. 바로 문제 풀이 시작해보도록 하겠습니다. 1. 문제 6번 문제로 들어오게 되면 Suninatas 게시판이 보입니다. 문제에 접근하기 위해 힌트 및 참고하라는 게시글이 보이네요. 바로 문제풀이에서 차근차근 제대로 된 문제를 해결해 봅시다. 2. 문제풀이 처음에 Hint라는 곳이 매혹적으로 끌려 게시글에 들어가 보겠습니다. suninatas 가 작성한 글을 읽으라는 표현 같네요 이후 참고하라는 게시글을 읽어보도록 하겠습니다. 게시글에 접근하였더니. md5 해싱 사이트가 적혀있네요. 그렇다면 이제 3번째 글을 읽어보도록 하겠습니다. 3번째 게시글을 보니, 쿼리문이 존재하며 패스워드를 입력하라고 나와있습니다. "select szPwd from T_..
suninatas/웹/6번 문제풀이안녕하세요 어느덧 문제의 절반을 지나 6번 문제풀이가 되었네요. 바로 문제 풀이 시작해보도록 하겠습니다. 1. 문제 6번 문제로 들어오게 되면 Suninatas 게시판이 보입니다. 문제에 접근하기 위해 힌트 및 참고하라는 게시글이 보이네요. 바로 문제풀이에서 차근차근 제대로 된 문제를 해결해 봅시다. 2. 문제풀이 처음에 Hint라는 곳이 매혹적으로 끌려 게시글에 들어가 보겠습니다. suninatas 가 작성한 글을 읽으라는 표현 같네요 이후 참고하라는 게시글을 읽어보도록 하겠습니다. 게시글에 접근하였더니. md5 해싱 사이트가 적혀있네요. 그렇다면 이제 3번째 글을 읽어보도록 하겠습니다. 3번째 게시글을 보니, 쿼리문이 존재하며 패스워드를 입력하라고 나와있습니다. "select szPwd from T_..
2021.06.14