저번 시간에 프록시 설정하는 것과 버프 스위트설정 하는 것을 알아보았습니다.
이번에는 실제 버프 스위트 기능을 몇가지 알아보겠습니다.
버프 스위트의 proxy탭에 Intercept, History가 있으며 intruder, repeater 탭이 있는 것을 확인할 수 있습니다.
이것에 대해 하나씩 실습과 함께 알아보겠습니다.
1. intercept은 프록시 서버로 거쳐가는 요청을 프록시 서버에서 잡아놓는 기능입니다.
실제로 요청을 보내니 브라우저에 응답이 오지않고 버프스위트에서 요청 내용을 확인할 수 있습니다.
이때 forward를 눌리면 현재 요청을 보내게 됩니다. 또한, intercept on 버튼을 눌리면 잡고있는 것을 놓아주며 전체 요청을 보낼 수 있습니다.
forward를 눌려주니 해당 요청을 보내며 브라우저에 응답이 간 것을 확인할 수 있습니다.
또한, 요청을 잡고 있을 때 데이터를 수정할 수 도 있습니다.
실제 연습 사이트에서 실습해보겠습니다.
intercept로 요청을 잡아 데이터를 normaltic으로 바꿔보라고 하네요.
데이터를 normaltic으로 바꾸고 intercept off로 바꿔주며 잡은 요청을 풀며 요청을 보내보겠습니다.
2. history는 버프 스위트를 통과한 요청 및 응답을 확인할 수 있습니다.
페이지에 들어올 때, 들어온 파일을 확인해서 비밀 코드를 찾아보라고 하네요.
history 기능으로 모든 파일을 보겠습니다.
모든 파일을 찾아보니 secret data가 보이네요.
3. repeater 기능은 같은 요청을 여러번 반복해서 보낼 때 사용할 수 있습니다.
그리고 이때 데이터를 변경해서 보낼 수도 있습니다.
intercept로 잡은 요청에 대해 오른쪽 클릭을 하면 send to repeater를 확인할 수 있는데 이걸 클릭하면 해당 요청이 리피터 기능을 할 수 있게 repeater탭으로 이동하게 됩니다.
이렇게 리피터 탭으로 요청이 이동되고 send버튼을 누르게 되면 해당요청을 계속 보낼 수 있게 됩니다.
이제 data 부분을 1~50 사이로 숫자를 변경해가며 보내면 문제가 풀리겠군요...
언제 50까지 하나했는데 다행히 14를 보내니 solved가 나왔네요.
이렇게 리피트를 사용하면 해당 요청을 반복해서 보낼 수 있습니다. 물론 데이터도 변경하면서요!
4. intruder은 리피트를 자동으로 해주는 역할이라고 보시면 됩니다.
방금 리피트를 할 때 data 50 이였다면 50번을 했어야 했을 것입니다. 하지만 이것을 자동으로 해주는 것이지요.
아니나 다를까 이번엔 100까지네요 역시 일일이하면 힘들겠죠? intruder를 사용해보겠습니다.
똑같이 오른쪽 클릭하면 send to intruder가 보입니다. 클릭하여 intruder 기능을 사용해보겠습니다.
사용하기 전에 우리가 변경해줘야하는 부분에 드래그 후 add버튼을 클릭하여 변경할 부분을 지정해줍니다.
그 후 페이로드 탭을 클릭하여 세팅을 해주어야합니다. 우리는 1부터 100까지 1씩 증가하며 요청을 보낼 것이기 때문에 type을 numbers로 지정하고 1부터 100 까지 1씩 증가하게 지정해줍니다. 그리고 start attack을 클릭해주면 끝입니다.
자동으로 하나씩 변경해가며 요청을 하는 것을 확인할 수 있습니다. 그런데 혼자 유독 글자가 다른게 하나있네요!! 확인해보겠습니다.
역시 solved를 반환하네요
이렇게 자동으로 원하는 부분을 변경하며 요청을 반복해서 보낼 수도 있습니다.
그 외에 decoder 탭, comparer 탭이 있습니다. 이 기능은 각각 보면
decoder: 인코딩, 디코딩을 수행해줍니다.
comparer: 데이터들을 서로 비교하여 다른 부분을 보여줍니다.
디코더는 오른쪽에서 어떤 방식으로 인코딩 및 디코딩할 것인지 정해주면 알아서 해줍니다.
이때까지 인터넷에서 찾아서 했었는데 이 기능을 사용하면 좋을 것 같습니다.
사진처럼 원하는 데이터를 복사하여 paste 버튼을 누르면 붙여넣기가 되며 오른쪽 아래의 words나 bytes를 누르면 데이터를 비교할 수 있습니다.
words는 단어 단위로 비교해주며, bytes는 바이트 단위로 비교해줍니다.
modified: 수정된 부분
deleted: 삭제된 부분
added: 추가된 부분
이렇게 저번 시간과 이번 시간을 통해 버프스위트를 알아보았습니다.
웹 해킹에서 필수적으로 사용하는 도구라고하니 잘 다룰수 있도록 더 알아보고 공부해야할 것 같습니다.
'웹 개발' 카테고리의 다른 글
웹 개발 공부하기 4 - 과제 (자바스크립트) (0) | 2023.11.18 |
---|---|
웹 개발 공부하기 4 - 3 (HTTP) (0) | 2023.11.17 |
웹 개발 공부 일기장 4 - 1 (Web Proxy) (0) | 2023.11.16 |
웹 개발 공부 일기장 3 - 과제 (jwt 로그인 페이지) (0) | 2023.11.13 |
웹 개발 공부하기 3 - 과제 (jwt) (2) | 2023.11.11 |