개념 사전 · 프로그램

sqlmap

에스큐엘맵

은 HTTP 입력과 응답을 비교하여 조건을 자동 시험하는 도구다. 자동 결과도 요청의 인증 상태·입력 위치·캐시·오류 처리와 DB 권한을 확인한 뒤 해석해야 한다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

01무엇이고, 어떤 일을 하나

  • 검사할 입력 위치와 쿼리 영향 후보를 체계적으로 비교한다.
  • 응답 기반·시간 기반 관찰의 차이를 이해한다.
  • 코드 수정 전후에 데이터와 구조의 경계를 검증한다.

02어떤 순서로 동작하나

  1. 정상 요청 보존

    격리된 애플리케이션의 메서드·URL·본문·쿠키·토큰을 확인한다. 인증이 풀린 요청은 원래 기능과 같은 검사가 아닐 수 있다.

  2. 검사 입력 선정

    허가된 기능에서 어느 값이 DB 쿼리에 도달하는지 정한다. 모든 매개변수에 의미 없는 시험을 확대하지 않는다.

  3. 비교 관찰

    정상·경계 입력의 응답 구조·시각·서버 로그를 반복 비교한다. 네트워크 지연과 시간 기반 조건의 영향을 분리한다.

  4. 수정 검증

    매개변수화·허용 목록·DB 최소 권한을 적용한 뒤 정상 검색과 경계 입력을 다시 비교한다. 데이터 추출 성공을 목표로 삼을 필요 없이 구문 분리가 유지되는지 확인한다.

03먼저 알아둘 용어와 구성요소

검사 대상으로 선택한 요청 입력 필드.
조건 변화에 따른 응답의 차이를 관찰하는 방식.
응답 시간 변화와 그 조건의 관계를 관찰하는 방식.
응답 특징으로 추정한 데이터베이스 제품 정보.

04예제로 따라가기

  • 가상 이름 검색에서 따옴표를 포함한 정상 이름이 오류 없이 하나의 값으로 처리되면 바인딩의 의미를 설명할 수 있다.
  • 응답 지연이 모든 요청에 나타나면 특정 조건의 결과보다 서버 부하를 먼저 의심한다.
  • 프로그램이 비취약으로 표시해도 검사한 로그인 상태와 입력 위치가 틀렸다면 결론의 범위는 제한된다.

05혼동하기 쉬운 점과 확인 기준

  • 자동 도구는 업무 ·복잡한 상태 전이·모든 구성 지점을 자동으로 완전 탐색하지 않는다.
  • 스캔의 정보 수집 기능과 데이터 변경·추출 기능의 영향을 구분하며 실제 운영 대상의 공격 절차로 사용하지 않는다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.