일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- blind sql injection
- 함수
- document
- property
- IF문
- python
- 백준 파이썬
- lord of sql injection
- 포인터
- window
- object
- burp suite
- suninatas 풀이
- 배열
- 조건문
- 파이썬
- htmlspecialchars
- jQuery
- 객체
- element 조회
- sql injection
- xss game
- 자바스크립트
- xss game 풀이
- 백준 알고리즘
- 김성엽 대표님
- 사칙연산
- 메소드
- Pwndbg
- github
- Today
- Total
목록웹해킹/Bee-Box (17)
power-girl0-0
반사된 xss에 대한 정의에 대한 내용은 아래 포스트에 설명되어 있습니다. 2020/12/27 - [웹해킹/Bee-Box] - 반사된 XSS( Reflected Cross-Site Scripting ) 비박스 환경을 활용한 웹 모의해킹 완벽 실습 책의 내용을 포함하고 있습니다. 스스로 공부하고 정리하기 위한 목적으로 올리는 것입니다. 1-1. JSON JSON은 클라이언트와 서버가 통신할 때 자료를 표현하는 방법으로, 특정 언어에 제한 없이 그대로 사용할 수 있다는 장점이 있고 여러 자료 구조를 JSON으로 표현할 수 있다. 1. 취약한 사이트를 선택한다. 해당 페이지는 JSON으로 객체를 선언하는 자바 스크립트 코드를 사용하여 검색한 영화 정보를 출력한다. 2. 실습 (1) 입력란에 아무 단어를 입력하..
비박스 환경을 활용한 웹 모의해킹 완벽 실습 책의 내용을 포함하고 있습니다. 스스로 공부하고 정리하기 위한 목적으로 올리는 것입니다. 1-1. 반사된 XSS란? 웹 페이지 URL에 존재하는 파라미터에 악의적인 스크립트 코드를 입력하여 사용자가 URL을 클릭하면 입력해둔 악성 스크리트 코드가 실행되는 공격이다. 해당 공격은 스크립트가 포함된 URL을 메일로 전송하거나 게시물로 등록하여 클릭을 유도한다. 2-1. GET 1. 취약한 사이트를 선택한다. 2. 간단한 스크립트를 입력하여 취약한 사이트인지 확인한다. First name 입력란에 스크립트를 입력하고 Last name입력란에는 아무 값이나 입력하였다. 실행 결과, 스크립트가 실행되어 [그림 1-4]와 같이 Succeed 메시지가 경고창으로 출력되는 ..
비박스 환경을 활용한 웹 모의해킹 완벽 실습 책의 내용을 포함하고 있습니다. 스스로 공부하고 정리하기 위한 목적으로 올리는 것입니다. 1-1. XSS란? 웹 사이트에서 입력 데이터가 적절한 값인지 검사하지 않고 웹 브라우저를 실행할 때 발생하는 취약점이다. 이 취약점은 서버에 전달되는 모든 변수 값에서 발생할 수 있으며, 공격자가 세션을 탈취하여 다른 사용자의 권한을 취득하거나 악성코드를 배포하기 위한 목적 또는 피싱하여 사용자의 중요한 정보를 획득하기 위한 목적으로 사용된다. 1-2. 저장된 XSS란? 그림1 출처 : https://cafe.naver.com/kkw7564/20 악의적인 스크립트 코드가 웹에 입력되면서 데이터베이스에 저장된다. 불특정 다수의 사용자가 공격자의 게시물에 접근하면 지속적으로..
GET방식과 달리 POST방식은 URL에 변수가 나타나지 않는다. 따라서, 이번에는 프락시 도구를 사용하여 변수를 확인하고 sql인젝션을 시도할 예정이다. 해당 글에서는 Burp suit 도구를 사용하였다. 1. burp suit를 사용하여 proxy를 켜준다. (burp suit에 대한 설명은 다 아는 것으로 간주하고 본 글에서는 따로 기재하지 않기로 한다.) 2. SQL Injection (POST/Search)를 선택해줍니다. 3. 작은따옴표(')를 입력하여 SQL 인젝션이 가능한지 알아본다. 작은따옴표는 데이터베이스에서 문자 데이터를 구분하는 것으로 입력창에 '를 입력시 다음과 같이 문법 오류가 발생이 일어난다. 입력결과 SQL 오류 메시지를 출력하는 것을 확인할 수 있다. (SQL 인젝션 취약점..
SQL 인젝션이란? 사용자가 입력값을 서버에서 검증하지 않고 데이터베이스 쿼리 일부분으로 인식하여 데이터베이스의 정보가 노출되거나 인증이 우회되는 취약점 - 해당 공격은 사용자가 데이터를 입력할 수 있는 곳 어디에서든 발생가능하다. - SQL쿼리를 변수에 입력하여 데이터베이스 정보를 획득하거나 시스템 내부를 파악하는 공격이다. 1. SQL Injection (GET/Search)를 선택합니다. 2. 검색창에 작은따옴표(')를 입력하여 SQL 인젝션이 가능한지 알아본다. ('sqli_1.php' 페이지는 영화 제목을 검색하고 데이터베이스에서 조회한 결과를 보여주는 페이지이다.) 입력결과 SQL 오류 메시지를 출력하는 것을 확인할 수 있다. (SQL 인젝션 취약점이 존재할 경우 SQL 오류 메시지를 출력한다..
SSI Injection이란? HTML 페이지의 전체 코드를 수정하지 않고 공통 모듈 파일로 관리하며 동적인 내용을 추가하기 위해 만들어진 기능 - SSI 지시어를 사용할 경우 : ' .shtml '확장자 파일을 생성한다. 사용하지 않을 경우 : SSI지시어를 주석으로 처리한다. - 페이지에 악의적인 지시어를 주입하는 공격이 가능하다. ex) 방문자수 세기, 홈페이지의 로고 수정 1. 해당 사이트는 first name과 last name을 입력하여 전송시 받아온 값과 함께 사용자 PC의 ip주소를 출력해준다. 이때, ssii.shtml로 바뀐 것을 보아 SSI 지시어를 사용하고 있다는 것을 알 수 있다. 2. 취약점을 파악하기 위해 SSI 지시어를 입력란에 넣어서 확인해보겠다. (1) 현재 시간을 출력하..
1. 해당 페이지는 message를 누를 경우 test 문자가 출력되는 페이지이다. 2. 파라미터를 확인하니 get방식인 것을 확인 할 수 있다. 3. message변수안에 값을 바꿔도 출력되는지 확인해보겠다. test 대신 Hello값을 입력하여 전송한 결과 출력되는 값이 바뀌는 것을 확인할 수 있다. 4. php 취약점이 있는지 확인하기 위해 세미콜론(;)를 사용하여 system()함수에 ls를 넣어 파일목록을 출력해보겠다. - PHP 취약점 : exec()함수 또는 eval()함수를 사용할 경우 세미콜론(;)을 사용하여 다른 함수를 실행할 수 있는 취약점을 갖고 있다. - exec() : 외부프로그램을 실행시켜주는 함수로 쉘 명령어들을 사용할 수 있게 해준다. - eval() : eval함수 안에 ..
OS 커맨드 인젝션 ( OS Command Injection )란? 취약한 변수로 시스템 명령어를 주입하여 서버 운영체제에 접근하는 공격이다. 1. 해당 페이지는 nslookup 명령어를 사용하여 DNS 주소를 출력해주는 페이지다. 해당 페이지는 시스템 명령어를 사용하여 OS의 정보를 알아낼 수 있다는 것을 알 수 있다. 2. 파이프라인( | )을 활용하여 서버시스템이 가진 파일 목록을 출력해보겠다. - 파이프 라인( | ) : 둘 이상의 명령어를 실행할 때 사용한다. (순서는 앞 명령어 후 뒤 명령어가 실행된다.) - ls 명령어 : 현재 경로에 있는 파일 및 디렉터리를 출력해준다. 그렇다면 모든 파일의 정보를 출력해도록 하겠다. ( 명령어 : ls -al ) 다음과 같이 파일의 접근 권한 등 시스템 ..