개념 사전 · 프로그램
sqlmap
에스큐엘맵
은 HTTP 입력과 응답을 비교하여 조건을 자동 시험하는 도구다. 자동 결과도 요청의 인증 상태·입력 위치·캐시·오류 처리와 DB 권한을 확인한 뒤 해석해야 한다.
밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.
01무엇이고, 어떤 일을 하나
- 검사할 입력 위치와 쿼리 영향 후보를 체계적으로 비교한다.
- 응답 기반·시간 기반 관찰의 차이를 이해한다.
- 코드 수정 전후에 데이터와 구조의 경계를 검증한다.
02어떤 순서로 동작하나
- 정상 요청 보존
격리된 애플리케이션의 메서드·URL·본문·쿠키·토큰을 확인한다. 인증이 풀린 요청은 원래 기능과 같은 검사가 아닐 수 있다.
- 검사 입력 선정
허가된 기능에서 어느 값이 DB 쿼리에 도달하는지 정한다. 모든 매개변수에 의미 없는 시험을 확대하지 않는다.
- 비교 관찰
정상·경계 입력의 응답 구조·시각·서버 로그를 반복 비교한다. 네트워크 지연과 시간 기반 조건의 영향을 분리한다.
- 수정 검증
매개변수화·허용 목록·DB 최소 권한을 적용한 뒤 정상 검색과 경계 입력을 다시 비교한다. 데이터 추출 성공을 목표로 삼을 필요 없이 구문 분리가 유지되는지 확인한다.
03먼저 알아둘 용어와 구성요소
- 검사 대상으로 선택한 요청 입력 필드.
- 조건 변화에 따른 응답의 차이를 관찰하는 방식.
- 응답 시간 변화와 그 조건의 관계를 관찰하는 방식.
- 응답 특징으로 추정한 데이터베이스 제품 정보.
04예제로 따라가기
- 가상 이름 검색에서 따옴표를 포함한 정상 이름이 오류 없이 하나의 값으로 처리되면 바인딩의 의미를 설명할 수 있다.
- 응답 지연이 모든 요청에 나타나면 특정 조건의 결과보다 서버 부하를 먼저 의심한다.
- 프로그램이 비취약으로 표시해도 검사한 로그인 상태와 입력 위치가 틀렸다면 결론의 범위는 제한된다.
05혼동하기 쉬운 점과 확인 기준
- 자동 도구는 업무 ·복잡한 상태 전이·모든 구성 지점을 자동으로 완전 탐색하지 않는다.
- 스캔의 정보 수집 기능과 데이터 변경·추출 기능의 영향을 구분하며 실제 운영 대상의 공격 절차로 사용하지 않는다.
06상세 노트 · 실습 자료
헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.
공식 문서 · 표준
기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.