
맛도리 닭강정 먹으면서 이번 주 마무리~~
1. 복습
1) 웹 취약점 점검도구 개발
① 스파이더 url 확인하고 공격하고 리포팅까지 해봤음
2) 기본테스트
① 잽을 접속해서 되는지 안되는지 확인하고
3) 잽.core.alert
① 취약점 끄집어내기 ㄱㄴ
② 화면 출력도 ㄱㄴ
4) 유형
① 1~4까지
② 패턴매칭하다 보니까 로우랑 인포메이션은 거의 스킵!
2. 웹 취약점 점검도구 개발 – Scan 코드
1) 해당 페이지의 response body를 AI 에 질문하여 웹 취약점을 확인헤보기
2) 툴 구현입장에서 “어떤문자열을 조합하여 탐지”할지 결정해야함
3) def check_dom_xss
① 탐지방법 정의
② 패턴 1: document.URL
③ 패턴 2: document.write
④ 둘다 있으면 취약!
4) CUSTOM_ RULES.append
① 사용자정의 룰셋을 검사 리스트에 등록
5) Zap.core.messages로 저장된 모든 메시지 가져옴
6) HTTP 응답 정보 추출
7) request_header = msg.get('requestHeader', '')
① 겟인지 포스트인지 받아오고 프로토콜이랑 파라미터도 들고 옴
② url = parts[1]을 쓰면 파라미터만 가져옴
8) result = rule['check_function'](response_body, response_header, status_code)
① 리스펀스 바디 값을 일단 결과로 던짐
② 파운드인지 트루, 펄즈로 출력해줌
9) if existing['url'] == alert['url'] and existing['alert'] == alert['alert’]:
① 탐지한 입장에서 룰을 구현할 때 파라미터가 여러 개 있을 수 있는데 그러면 중복탐지가 될 수 있음
② 요 한줄로 중복확인함
3. 준비
1) 사전준비
① 잽 열고 툴즈, 옵션, api 들어가서 api키 갔고 와서 코드에 넣기
② 개인적으로 나는 포트가 꼬여서 포트 다 바꿔줌
2) 1. Passive Scan 방식
① 이미 수집된 HTTP 트래픽 분석
② 공격 없이 안전하게 탐지
③ Response Body, Header, Status Code 검사
3) 정규표현식 (Regex)
① 패턴 매칭으로 민감 정보 탐지
② re.findall(), re.search() 활용
4) 커스텀 룰 구조
① name: 취약점 이름
② risk: High/Medium/Low
③ check_function: 탐지 로직
④ solution: 해결 방법
5) 탐지 가능한 것
① 민감 정보 노출 (주민번호, 카드번호)
② 오류 메시지 노출 (SQL, Stack Trace)
③ 보안 헤더 누락
④ 서버 정보 노출
⑤ 관리자 페이지 접근
6) ZAP DB 연동
① 현재는 Python에서만 탐지
② ZAP Script 기능으로 GUI 연동 가능
4. Scan(사용자 정의 룰 생성 및 탐지-1, 4-1.py)
1) Dom xss 패턴 찾아낼거임
2) 소스 보기
① view-source:http://aspnet.testsparker.com/pricings.aspx
② setTime이랑 location.herf 찾아내기

③ 이걸 코드 패턴에 넣어줌 (4.1.1,py)

i. 이게 찾아내는 코드임
ii. 변수는 변할 수 있지만 저 함수는 dom xss에서 사용되는 거니까 무조건 있을걸 알고 패턴으로 넣어놓는 거임
3) zap에서 확인하기
① 코드에서 잽이랑 연결해 놨으니까 확인만 해주면 됨

i. Site 눌러서 pricing.aspx가면 됨
ii. 우리는 여기에 있다고 알고 진행하는 거기 때문에 얘가 출력이 되는지만 확인하면 됨
4) 그 후에 4.1.1 코드 실행하고 나면 결과 출력 됨

① 2개의 패턴이 감지됐다고 뜸
5. 웹 모의해킹 진행순서
1) Dast 도구
① zap
2) dast 도구 결과를 바탕으로 수동 점검
3) 수동 점검
① 수집된 디렉토리 분석
② 메뉴별 공격 시나리오 진행
4) 종류
① 로그인페이지
i. Sql injection
ii. csrf
② 회원가입
i. Sql injection
ii. 가입할 때 중복 체크
iii. 휴대폰 인증
③ 게시판
i. 파일 업로드
ii. 다운로드
iii. Xss
iv. Csrf
v. 타인 비밀글 보기/수정/삭제
vi. 공지사항 글 작성
5) Ucgxwjon 데이터

6) 잽해서 requester가서 헤더랑 바디 넣고 send 해보기

7) 결과

① 요 뱅크 밑에 ws_asmx가 생김
8) Burp 실행
① true

i. -1 OR 2+101-101-1=0+0+0+1

② false
i. -1 OR 3+101-101-1=0+0+0+1
9) 히스토리 남겨보기

10) burp에서 확인

11) 위에서 했던 트루펄즈 넣어보기
① login 공격 페이로드
i. -1' OR 2+271-271-1=0+0+0+1—
- 참
ii. -1' OR 3+271-271-1=0+0+0+1—
- 거직
iii. 맨 뒤의 – 두개는 커맨드 처리임
6. Cross site scripting
1) 데모 테스트파이어 들어가서 connact us 가서 알람 줘보기

① 확인은 안됨
② 관리자가 해당 글 확인 시 로그에 세션값 저장되는지 확인
7. 모의점검 - 분석기준 매핑해보기
1) A01: Broken Access Control (접근 제어 실패)
① 불충분한 권한 검증, 관리자 페이지 노출, 디렉터리 인젝션, 파일 다운로드, 서버사이드 요청 위조(SSRF), 프로세스 검증 누락
2) A02: Security Misconfiguration (보안 설정 오류)
① 불필요한 Method 악용, 코드인젝션(XXE)
3) A04: Cryptographic Failures (암호화 실패)
① 데이터 평문 전송
4) A05: Injection (인젝션)
① SQL 인젝션, 코드 인젝션(기타 항목), 크로스사이트 스크립트(XSS)
5) A07: Authentication Failures (인증 실패)
① 약한 비밀번호 정책, 불충분한 인증 절차, 취약한 비밀번호 복구 절차, 불충분한 세션 관리, 쿠키 변조
6) A08: Software & Data Integrity Failures (무결성 실패)
① 악성 파일 업로드
7) A10: Mishandling of Exceptional Conditions (예외 처리 미흡)
① 에러 페이지 적용 미흡, 정보 누출
8) 기타 (공격 유형/수단)
① 자동화 공격
'시큐리티아카데미 7기 - sk쉴더스트랙 > 4주차 (2026.03.16 ~ 2026.03.20)' 카테고리의 다른 글
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 18일차 - 2026.03.19 (0) | 2026.03.19 |
|---|---|
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 17일차 - 2026.03.18 (0) | 2026.03.18 |
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 16일차 - 2026.03.17 (0) | 2026.03.17 |
| [시큐리티 아카데미 7기 - sk쉴더스 트랙] 15일차 - 2026.03.16 (0) | 2026.03.16 |