피들러(Fiddler)

징징이·2024년 6월 28일

보안

목록 보기
1/2
post-thumbnail

Fiddler

https://www.telerik.com/fiddler

피들러는 클라이언트(PC)에서 서버로 요청한 내역과 결과의 모든 데이터를 확인할 수 있고, 설치 용량도 적어서 자주 사용하는 툴입니다. break point를 설정하며 요청처리를 중지하거나 요청 또는 응답의 변경을 허용할 수 있습니다. 네트워크 세션을 편집하는데 이용될 수 있습니다.

사용

  • 캡쳐된 트래픽 중에 하나를 선택하면 왼쪽에서 상세내역을 볼 수 있습니다.
    1. 통계내역(statistics)
    • 선택된 트래픽의 상태코드, 프로토콜, 크기, 요청시간에 대한 정보들을 확인할 수 있습니다.
    • 만약 응답이 실패한 경우 붉은색으로 표시됩니다.
    1. 필터(filter)
    • 특정 사이트의 트래픽만을 캡쳐하기 위해 필터 설정을 할 수 있습니다.
    • [filters] -> [Use Filters] 체크 -> [Hosts]에 트래픽 캡쳐할 웹사이트 도메인 작성 -> [Actions]
    1. 중단점(breakpoint)
    • breakpoint를 통해 break 유형을 선택하면 request를 날릴 때 바로 실행되지 않고 Run to completion을 눌러야만 전송됩니다.

로그인을 통해 알 수 있는 보안 취약점

fiddler 툴을 통해 로그인 중간을 capturing 해본다면 어떨까?

  • 전송과정에서 id, pw가 보이지 않도록 암호화되어있습니다.

edu ssafy login

  • 로그인 버튼을 눌러 request를 날리려고 할 때 id, pw가 그대로 노출되고 있습니다.

  • 화면에서는 알맞은 id, pwd를 치고 있지만 fiddler를 통해 pw를 조작하면 조작된 pw가 back-end로 넘어가게 됩니다.

## 보안 취약점

기존에 프로젝트를 진행하면서 사용자 id, pw를 안전하게 관리하기 위해 DB에 hash된 값을 저장하고, 사용자가 로그인을 요청할 때 back-end 단에서 pw를 복호화한 후 로그인을 처리하였습니다. 하지만 백엔드 보안만으로는 충분하지 않습니다. 전송 과정에서도 데이터를 안전하게 보호하기 위해 다양한 암호화 기법을 사용해야 합니다. HTTPS를 기본으로 하고, 필요에 따라 대칭 키 암호화, 비대칭 키 암호화, 하이브리드 암호화, JWT 등의 방법을 적절히 활용하여 보안을 강화해야 합니다. 이를 통해 클라이언트와 서버 간의 통신이 안전하게 이루어지도록 노력해야 합니다.

profile
초보 개발자의 개발 공부

0개의 댓글