인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

쭈도리님의 프로필 이미지

작성한 질문수

웹 개발자와 정보보안 입문자가 꼭 알아야 할 웹 해킹 & 시큐어 코딩

[실습6-4] 취약 환경 시큐어 코딩 적용 실습-1

CSRF 공격시 hidden 필드로 csrf 토큰도 넣어주면 가능하지 않을까요?

해결된 질문

작성

·

51

·

수정됨

0

image.png

 

공격 스크립트에 CSRF 토큰도 필드로 입력시켜주면 안될까요.?

그러면 세션에 유저의 CSRF 토큰값은 유지되고

파라미터로 넘길 CSRF 토큰도 유저의 토큰이어서 비교했을 때 같지 않을까요?

 

여기서 전제 조건은 유저의 CSRF토큰을 받을 수 있다는 건데 이건.. 어떻게 알 수 있을지 모르겠지만 안다고 가정하면? 될거 같다는 생각이 들었습니다.

답변 2

0

크리핵티브님의 프로필 이미지
크리핵티브
지식공유자

밑에 AI 답변을 참고하시면 될 듯 합니다.ㅎㅎ

그러나, Ajax로 csrf 토큰 추출 및 포함 시켜 하는 우회 방법이 있긴합니다.

따라서 Referer 체크까지 해주는게 안전합니다.

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. 쭈도리님, CSRF(Common Secure Request Forgery) 공격에서 CSRF 토큰을 사용하여 취약점을 보완하는 것은 일반적인 보안 대책입니다. 이 보안 대책의 강점은 사용자의 세션과 연계된 토큰이 없으면 중요한 요청의 처리가 불가능해진다는 점입니다.

CSRF 공격 스크립트에 유효한 CSRF 토큰을 포함시키는 것은 공격자에게 상당히 어려운 과제입니다. 왜냐하면, CSRF 토큰은 일반적으로 사용자 세션과 함께 서버에서 생성되며, 서버는 클라이언트에 이 토큰을 제공합니다. 따라서 공격자가 유효한 토큰을 알아내지 않는 한, 공격 스크립트에 CSRF 토큰을 포함시키는 것은 불가능합니다.

하지만, 잘못된 구현 또는 여타 취약점이 있는 경우 공격자가 CSRF 토큰을 유출하거나 추측하는 방법을 찾을 수 있을 수도 있습니다. 이를 방지하기 위해 토큰을 예상하기 어렵게 생성하고, 자주 변경하며, 서버 측에서 이를 철저히 검증하는 것이 중요합니다.

추가적으로 관련된 질문과 답변들을 확인하시려면 아래 링크들을 참고하시기 바랍니다:

  1. 안녕하세요 xss관련 질문입니다.
  2. reflected나 dom-based공격 같은 경우에는 post 방식일때는 공격이 불가능한건가요?

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.