SQLi Log Answer
로그형 문제는 위치, 근거, 영향, 조치, 재발 방지를 순서대로 쓴다
SQL Injection 의심 로그는 공격 문자열만 찾는 문제가 아니라, 어떤 기능이 노출됐고 어떤 통제를 보완할지 쓰는 답안 구조 문제다.
증거 묶음
요청 정보
URI, 파라미터, 메서드, IP, 계정, 시간대를 함께 본다.
공격 근거
UNION, OR 1=1, 지연 함수, 따옴표, 주석 패턴을 확인한다.
영향 범위
인증 우회, 개인정보 조회, DB 변조 가능성을 우선 확인한다.
01
요청 위치
어느 URL, 파라미터, 쿠키, 헤더에서 의심 값이 들어왔는지 쓴다.
02
공격 근거
SQL 키워드, 특수문자, 반복 요청, 500 오류, WAF 탐지를 근거로 묶는다.
03
영향 범위
조회, 수정, 삭제, 인증 우회, 오류 노출 가능성을 DB 로그와 대조한다.
04
즉시 조치
공격 패턴 차단, 취약 기능 격리, 계정 잠금, 증거 보존을 먼저 수행한다.
05
재발 방지
Prepared Statement, 허용목록 검증, DB 최소권한, 오류 제한을 적용한다.
분석 항목 확인 내용 답안 표현
웹 로그 동일 URL 반복, 긴 query string, 비정상 파라미터 검색 파라미터에서 SQL 조건 조작 시도가 반복됨
WAF 로그 SQL Injection 시그니처, 차단 여부, 출발지 IP WAF 탐지 근거와 차단 정책 적용 여부를 확인
DB 로그 비정상 조회량, 오류, 권한 초과 시도 개인정보 조회와 데이터 변조 여부를 우선 조사
근본 수정
입력값을 SQL 문자열에 직접 결합하지 않고 파라미터 바인딩으로 바꾼다.
피해 제한
웹 애플리케이션 DB 계정 권한을 업무에 필요한 범위로 줄인다.
운영 감시
웹, WAF, DB 로그를 이어서 보는 모니터링 기준을 남긴다.