데이터 추출을 위한 시작 및 끝 구분 기호 정의 (예: 숨겨진 토큰)
이 단계에서는 방금 추가한 규칙을 구성합니다. Burp 에게 대상 데이터 바로 앞과 뒤에 오는 텍스트를 정의하여 무엇을 추출할지 알려줄 것입니다. 이는 시작 및 끝 구분 기호를 사용하여 수행됩니다.
이 실습에서는 다음 HTML 스니펫을 포함하는 응답에서 CSRF 토큰을 추출하려고 한다고 가정해 보겠습니다.
<input type="hidden" name="csrf_token" value="a1b2c3d4e5f6g7h8i9j0" />
우리의 목표는 a1b2c3d4e5f6g7h8i9j0 값을 추출하는 것입니다.
- 이전 단계에서 "Add"를 클릭한 후 "Define extract grep" 대화 상자가 나타납니다. 열려 있지 않으면 추가한 새 규칙을 클릭하여 엽니다.
- 도구는 Intruder 로 보낸 원래 요청에서 응답을 자동으로 가져옵니다. 하단의 응답 보기에서 이를 볼 수 있습니다.
- 추출을 정의하기 위해 시작 및 끝 구분 기호를 지정할 것입니다. 가장 안정적인 방법은 "Define start and end" 옵션을 사용하는 것입니다.
- 추출하려는 응답에서 고유한 텍스트 조각을 찾습니다. 예시를 위해 응답에 위의 HTML 스니펫이 포함되어 있다고 가정해 보겠습니다.
- 응답 보기에서 추출하려는 값 (예:
a1b2c3d4e5f6g7h8i9j0) 을 강조 표시합니다.
- "Start" 및 "End" 필드가 자동으로 채워집니다.
- Start after expression 필드에는 대상 데이터 바로 앞에 오는 텍스트가 포함되어야 합니다. 예시의 경우
name="csrf_token" value="가 됩니다.
- End at delimiter 필드에는 대상 데이터 바로 뒤에 오는 텍스트가 포함되어야 합니다. 예시의 경우
"가 됩니다.
- OK를 클릭하여 규칙을 저장합니다.
이제 name="csrf_token" value="와 " 사이의 텍스트를 모든 응답에서 검색하여 추출하는 규칙을 구성했습니다.