일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 웹 해킹 기초
- SQL Injection basic
- JS
- Injection 공격 기초
- SQL 주석
- sql 인젝션 기초
- JavaScript
- sql injection 데이터 추출
- http 취약점
- 공부하는 블로그
- sql injection
- Union injection
- DOM 객체
- SQL having group by
- php-fpm
- SQL INJECTION DB NAME
- 웹서버구축
- Injection 숫자형
- SQL 인젝션
- 웹 보안
- Linux
- nginx
- BOM 객체
- sql injection table name
- web 취약점
- web 보안
- HTTP request smuggling
- 웹 기초
- Injection 취약점
- portswigger academy
- Today
- Total
목록IT (18)
IMLENA
*생활코딩 자바스크립트강의 공부 Elements 객체 엘리먼트를 추상화한 객체 #식별자 API 엘리먼트의 이름, id, class는 식별자로 사용된다. 식별자 API는 이 식별자를 가져오고 변경하는 역할을 한다. html css JavaScript console.log(document.getElementById('active').tagName) console.log(document.getElementById('active').tagName) - LI var active = document.getElementById('active'); console.log(active.id); - active active.id = 'deactive'; - 'deactive' console.log(active.id); - ..
자바스크립트 기초 정리 생활코딩 - 자바스크립트 강의 공부 Javascript를 HTML에서 로드하기 1) Inline - 태그에 직접 자바스크립트를 기술하는 방식 Onclick - HTML안에 alert 자바스크립트 2) Script var hw = document.getElementById('hw'); hw.addEventListener('click', function(){ alert('hello world'); }) 라는 HTML태그안에 JS 코드가 삽입됨 3) 외부파일 삽입 var hw = document.getElementById('hw'); hw.addEventListener('click', function(){ alert('hello world'); }) (script.js파일 내용) #Ob..
DB 별로 테이블, 컬럼, 데이터를 추출하는 방법 MSSQL DB 목록을 출력하기 위한 구문 select name from mster..sysdatabases; 실제 요청 test.com/shop.php?id=10 union select null,name,null,null from master..sysdatabases * 그외 SELECT DB_NAME() : 현재 DB 명 SELECT DB_NAME(2) : DB id가 2인 DB명 반환 해당 구문으로 웹에서 사용중인 DB명을 확인 후 테이블명 추출 catmall 이라는 DB의 테이블을 출력하기 위한 구문 select name from catmall..sysdobjects where xtype='U'; #번외 xtype xtype=object type ..
2021.09.02 - [WEB] - SQL Injection 기초 - DB Error 기준 2021.09.03 - [WEB] - SQL Injection 기초 - MS/ORACLE/MY SQL , 시간지연, 주석 등 - DBMS 별 버전 출력 DBMS QUERY MSSQL MySQL ORACLE SELECT @@vsersion SELECT version() SELECT @@version SELECT banner from v$version SELECT banner from v$version where row num=1 - UNION 구문이용 데이터 추출 UNION 두개의 쿼리를 결과를 합치는데 사용하며, 두 개의 쿼리는 정확히 같은 수의 컬럼을 출력해야한다. 두개의 SELECT 구문의 해당 열의 데이터는..
2021.09.02 - [WEB] - SQL Injection 기초 - DB Error 기준 SQL Injection 기초 - DB Error 기준 SQL Injection 이란 애플리케이션의 사용자 입력값에 SQL 쿼리를 삽입 또는 추가 하고 해당 SQL구문을 서버가 해석 및 실행하는 과정에서 발생하는 공격 테이블, 메타데이터 조작, 권한 상승등의 취약 imlena94.tistory.com SQL Injection 을 위해 가장 기본적으로 숫자와 문자의 구분이 필요하다. 숫자 select * from exam where idsubject=2 select * from exam where score > 80 문자 select * from exam where subject='math' select * fro..
2021.09.01 - [WEB] - HTTP request Smuggling 취약점 1 2021.09.02 - [WEB] - HTTP request Smuggling 취약점 2 HTTP request smuggling 취약점 1,2에서 취약점을 찾는 방법을 공부했습니다. 이어서 취약점을 통한 exploiting을 정리하도록 하겠습니다. 1. Bypass front-end security controls 몇몇 애플리케이션에서 프론트엔드 서버는 보안을 위해 사용되기도 한다. (개별적 요청을 허용할 것인지 거부할 것인지 결정) 허용된 요청은 백엔드 서버로 전달되고 프론트엔드의 제약을 통과 한 것으로 인식된다. 즉 프론트엔드를 거쳐 백엔드로 들어온 요청에 대해서 백엔드 단에서 추가 확인을 하지 않는다. * 취..
SQL Injection 이란 애플리케이션의 사용자 입력값에 SQL 쿼리를 삽입 또는 추가 하고 해당 SQL구문을 서버가 해석 및 실행하는 과정에서 발생하는 공격 테이블, 메타데이터 조작, 권한 상승등의 취약점을 발생시킨다. EX) http://test.com/login.php?id=hi&pw=hi or '1' = '1 입력된 SQL 구문 Select user from users where id='hi' and pw='hi' or '1' ='1'; 취약점 구분 1) 싱글쿼터 ( ' ) SQL에서 (')는 코드와 데이터를 구분하는 식별자로 사용한다. 위 이미지를 보면 ' 가 추가된 경우 데이터가 출력되지 않는다. 이런 경우 error 메시지를 반환하게 된다. 2) ORACLE - 공백, | |, 콤마(,)..
2021.09.01 - [WEB] - HTTP request Smuggling 취약점 1 기존 글에 이어서 TE.CL 취약점, TE.TE취약점 1) TE.CL 취약점 프론트서버는 TE를 사용하고 백엔드서버는 CL 사용하여 request의 종료를 판단하는 경우 POST / HTTP/1.1 Host: website.com Content-Length: 3 Transfer-Encoding: chunked 8 SMUGGLED 0 프론트서버는 TE로 처리 하기 때문에 메시지 바디를 chunked encoding 방법으로 처리 한다. 첫번째 chunk는 8bytes로 SMUGGLED까지 인식하여 처리하고 두번째 chunk는 0 lenth로 request가 종료되었다고 판단 된다. 백엔드서버는 CL로 처리 하기 때문에..
HTTP request smuggling 이란 HTTP request 헤더를 조작하여 웹사이트가 HTTP 요청을 올바르게 처리하지 못하도록 하여 중요한 데이터에 엑세스 하거나 다른 애플리케이션 사용자에게 영항을 미칠 수 있는 공격중 하나이다. * HTTP 취약점 발생 원인 대부분의 HTTP request smuggling 취약점은 HTTP가 request의 종료를 2개의 다른 방법을 사용하기때문이다. 1) Content-Length message body의 길이를 bytes로 나타낸다. Content-Length 사용예시 POST /search HTTP/1.1 Host: website.com Content-Type: application/x-www-form-urlencoded Content-Length:..
HTTP - 웹 통신을 위한 프로토콜 HTTP + SSL = HTTPS HTTP에 암호화 기술 적용 HTTP Methods GET URL에 query string이 포함되어 전달, 로그 남음 POST Body에 parameters가 선달됨 HEAD GET과 동일, Response에 body 값을 return하지 않음 TRACE 진단목적, 서버는 받은 요청과 함께 응답을 되돌려준다. OPTIONS 사용가능한 HTTP Methods를 요청, Allow header값으로 되돌려준다 PUT Upload 시 사용 * PUT: 자원의 전체 교체 * PATCH : 일부 자원 교체 HTTP Headers - General Connection End point의 TCP 연결 상태, HTTP 종료 or KEEP Conte..