2022.09.02
오늘은 새로운 수업인 웹해킹 첫수업을 들었다
Web기본과 실습 환경
- web기본
- 실습환경세팅
웹해킹을 하기전에 웹에 기본에대해 알아보자
웹이 무엇인지 알아야 웹해킹을 논할꺼아닌가?
물리입자 사진을 찍어서 논문을 올리는 용도로 사용되었던 Web은 기업들이 회사 소개 및 상품소개용으로 발돋움하였고 , 많은사람들이 사용하기 시작하였다. 그 이후 회원가입 ----> Database ----> 스크립트 등 ---> 보안(암호화, 방화벽 등등) ---> 클라우드 서버운영을 하는등 구성을 가지게되었고, 점점 복잡해지니 구성상의 문제점, 취약점들이 발견되었다.
ex)
웹브라우저와 웹서버간에 암호화 이슈
웹서버의 설정 이슈
데이터베이스 설정 이슈 - SQL 인젝션
스크립트 공격 이슈 - XSS, CSRF, SSS, WebShell 등
HTTP Request헤더
Request( 어떤 Method를 사용, 어떤페이지를 요청)
Referer : 어디를 경유
User-Agent : 웹브라우저의 종류
Host : 요청을 누구한테 하나요? (요청을 받는 호스트의 IP/Domain)
----> Referer나 User-Agent에 리눅스 명령어를 사용해서 공격하는 취약점이 존재하는 경우도 있음
Respons
Server 어떤 서버인지
Content-Length 웹페이지 바디부분의 크기
Content-Type
안전한 메소드는 GET or POST
그 외에 나머지 메소드는 위험 ---> ISMS-P 인증심사에서 결함으로 간주GET : 페이지 요청, 검색어 입력 ------> HTTP Body를 사용하지 않음
POST : 로그인, 게시판 글쓰기, 파일 업로드 등등 ----> HTTP Body를 사용
PUT : 파일을 서버에 저장 -----> 악성코드를 업로드 가능성이있음
DELETE : 서버에 있는 파일을 삭제 ------> 서버의 중요 파일 지워질 우려가잇음
OPTIONS : 어떤 메소드를 사용 가능한지를 물어보는 것
SSL (Secure Socket Layer)
Netscape社에서 만든 웹브라우저아 웹서버간 암호화 방식
SSL1.0, SSL2.0은 취약점이 발견되어 사용 중지
SSL3.0을 사용하다가 또 취약점이 발견됨
현재는 사용하지 않음
TLS (Transport Layer Security)
SSL을 표준화하면서 이름을 TLS로 변경(누구나 사용할 수 있음)
취약점이 대부분 보완됨
1999년 이후로는 계속 TLS만 사용
실습환경
가상머신 : vmware Workstation 16 Player
운영체제 : Ubuntu-20.04.2.0
Memory : 2 GB
Processors : 2
Hard Disk : 20 GB
Network : NAT
가상머신 설치 및 WAS서버 구동
https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html
우분투 운영체제에서 WAS서버를 마이그레이션한 스냅샷파일을 넘겨주셨기때문에 따로 설정을 바꿀내용은없었다. 추가적으로 네트워크 설정또한 강사님이 직접 설정해서 넘겨주셨다.
WAS서버를 위한 우분투실행모습
실습을위한 WAS서버 구동모습
SQL Injection 및 여러 공격예제 탭들을 볼수있다.
실제환경에서 공격실습을 할수 없다보니 실제와 같은 실습환경을 로컬에서 구축하여 앞으로 실습예정이다.