일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 랜섬웨어
- oracle
- 다크웹
- 보안뉴스 한줄요약
- javascript
- oracle db
- 자바스크립트 prototype
- 자바스크립트 jQuery
- 자바스크립트 기본 문법
- 자바스크립트 node
- 자바스크립트 element api
- 카카오프로젝트100
- 자바스크립트 객체
- python
- 오라클
- 카카오프로젝트
- 자바스크립트 API
- 자바스크립트
- php
- numpy
- 파이썬
- 카카오프로젝트 100
- Oracle SQL
- 보안뉴스요약
- GIT
- ES6
- 깃허브
- 보안뉴스한줄요약
- 보안뉴스 요약
- 보안뉴스
- Today
- Total
목록Web Hacking/bee-box (17)
FU11M00N

먼저 SQL 인젝션은 사용자가 입력한 값을 서버에서 제대로 검증을 하지 않아 서버에서 DB의 쿼리문으로 인식하여 DB안의 정보가 노출되거나 인증이 우회되는 취약점이다. SQL 인젝션은 사용자가 데이터를 입력할 수 있는 곳 어디에서든 발생할 수 있고 이것을 이용해 SQL 쿼리를 변수에 입력을 하여 DB안의 정보를 탈취당 할 수가 있다. SQL injection은 인젝션 부분에서도 가장 중요한 부분이고 잘 알아야 할 부분이다! 사진 1-1은 SQL 인젝션의 동작원리입니다! 1. 레벨 low 그럼 가장 먼저 sqli_1.php 페이지로 SQL Injection을 시도해보겠습니다. 먼저'를 입력해 SQL 인젝션 공격이 가능한지 확인해봅니다! Error: You have an error in your SQL sy..

먼저 SSI 란 SSI란 Server Side Includes의 약자로서 웹페이지 내에서 CGI를 사용하지 않고서도 방문자 카운터, 최종변경일 및 CGI환경변수의 사용등을 간단히 사용할 수 있게 해주는 것으로 CGI환경변수 뿐아니라 일반적인 HTML문서 및 특정명령의 실행결과등을 지정한 위치에 삽입할 수 있는 것입니다! 1. 레벨 low 사진 1-1과 같이 Firstname과 Lastname으로 입력할수있는 칸이 존재하고 Lookup을 입력하면 사용자의 IP가 출력이 됩니다. 그리고 URL을 자세히 보면 ssii.shtml 페이지가 호출되어 ssii.shtml을 통해 SSI 기능을 사용한다는것을알 수가 있습니다. SSI 지시어는 HTML 주석과 비슷한 형태로 웹 어플리케이션 서버에서 SSI 기능을 설정하..

이번에는 PHP Code injection에 대해 알아보겠습니다! 먼저 PHP는 PHP:Hypertext Preprocessor 이며 아래와 같은 특징을 가지고 있는 서버 측 프로그래밍 언어입니다! 1. 주로 HTML 코드를 프로그래밍적으로 생성 2. 서버쪽에서 실행되는 프로그래밍 언어 1. 레벨 low phpi.php 에서는 message라고 되어있는 글씨를 클릭하면 'test' 문자가 출력됩니다! 그리고 URL을 보니 GET방식 메서드로 데이터를 전송하기 때문에 변수까지 노출되어있는 모습을 확인할 수 있다. message라는 변수가 노출되어있으니 저곳에 PHP 함수를 입력하여 내부의 정보를 확인해보도록 해보자! ls l 명령어를 사용하여 현재 디렉터리에 있는 파일들의 정보를 확인하였습니다. messa..

OS 커맨드 인젝션(OS command injection)은 취약한 변수로 시스템 명령어를 주입하여 서버 운영체제에 접근하는 공격입니다! OS 커맨드 인젝션의 공격 원리는 사진 1-1과 같습니다. 공격자가 서버에 악성코드를 심어놓으면 서버는 그 악성코드를 출력하는 형태입니다. 1. 레벨 low commandi.php의 사이트는 입력한 주소의 DNS 주소를 출력하는 것입니다. DNS를 조회할 때에는 nslookup 명령어가 사용되며 |(파이프 라인)을 사용하여 ls를 하면 파일들이 모두 출력됩니다!!. 여기서 |(파이프 라인) 은 앞에서 실행한 명령어 출력 결과를 뒤에서 실행하는 명령어 입력값으로 처리합니다! 그러하여 리눅스의 명령어 특징을 사용하여 | ls../../../ 이런식으로 상대 경로를 사용하여..

안녕하세요! 이번에는 iframe 인젝션에 대해 알아보겠습니다 먼저 html을 해봤다면 iframe을 사용해봤을 텐데요 iframe 태그는 임의의 위치에 또 다른 HTML 문서를 보여주는 내부 프레임(inline frame)태그를 사이즈와 위치를 조절하여 html 페이지에 나타낼 수 있습니다. 이를 이용해 악성 URL을 삽입하여 사이즈를 작게 혹은 0 으로 설정하여 숨기는 행위를 하여 사용자가 악성 사이트로 접속하게하는 공격 기법입니다. 그럼 bee-box를 활용하여 실습해보겠습니다! 1. 레벨 low 우선 iFrame injection의 사이트는 이렇게 생겼습니다! 무언가 iframe으로 내용이 출력되고 있습니다! iFrame injection 사이트를 관리자 도구(f12)로 확인하여 페이지의 소스를 ..

안녕하세요! 이번에는 Reflected(반사) 기법을 이용한 공격 기법이 아닌 Stroed(저장) 기법을 이용하여 공격을 해보겠습니다! 먼저 Stored(저장) 기법의 공격 원리는 사진 1-1과 같이 작동됩니다. 이것을 실습하기위해 bee-box에서 html injection(stored)를 클릭하여 시현해보겠습니다! 우선 stored는 대부분 블로그나 게시판에서 발생합니다. bee-box의 html injection은 블로그에서 발생하는데요 HTML 태그를 블로그에 저장하여 블로그에 입력한 text 필드에 내용을 입력하고 전송을 클릭하면 입력 내용이 다른 페이지로 전송이 됩니다. 1. 레벨 low 그럼 전에 포스팅했던 html injection post 인 홈페이지의 html 소스 코드를 몇 줄 복사해..

저번 포스팅에서는 GET방식의 Reflected 공격으로 html injection을 시현시켰는데요, 이번에는 POST 방식의 Reflected 공격으로 html injection을 시현해보겠습니다! 먼저 GET 메서드로 HTTP 요청하는 것과 POST 메서드로 HTTP의 차이점을 알아야 하는데요, 저번 포스팅에서 보셨듯이 GET 메서드로 HTTP 요청을 하게 되면 URL에 변수가 노출되어 공격자에게 허점을 보일 수 있는데요 POST 방식으로 메서드로 요청하게 되면 URL에 변수들이 URL에 노출이 안됩니다! 1. 레벨 low 그럼 직접 버프 스위트 프락시 도구를 사용하여 변수 값을 전달하는 구조를 확인해보겠습니다! 우선 프락시 도구를 사용하여 확인해보니 firstname과 lastname의 매개변수가 ..

저번에는 bee-box를 배우기 위해 기본적인 OWASP TOP 10이 무엇인가에 대해 알아봤는데요, 이번에는 A1-Injection 중 에서도 html injection (GET)에 대해 알아보겠습니다. 인젝션의 공격 방법은 Reflected(반사) 기법과 Stored (저장) 기법 공격이 있습니다. 먼저 Reflected(반사) 기법의 원리는 아래의 사진과 같습니다. 이 공격은 데이터 전송을 GET 방식으로 전송할 경우 URL에 변수 이름과 값을 노출합니다. 특정 사이트에 있는 URL 주소 입력창에 직접 주소를 입력하여 공격하는 기법으로 사용됩니다. 그럼 bee-box로 실습해보겠습니다. 1. 레벨 low 먼저 First name과 Last name 필드에 html 코드를 삽입합니다. First na..