사이트 간 요청 위조란 무엇입니까?

CSRF 또는 Cross-Site Request Forgery는 공격자가 다른 웹사이트의 피해자 세션에서 작업을 발생시킬 수 있는 웹사이트 취약점입니다. CSRF를 매우 위험하게 만드는 것 중 하나는 사용자 상호 작용이 필요하지 않다는 것입니다. 피해자가 익스플로잇이 포함된 웹 페이지를 보기만 하면 됩니다.

팁: CSRF는 일반적으로 문자 또는 "바다 서핑"으로 발음됩니다.

CSRF 공격은 어떻게 작동합니까?

이 공격은 공격자가 다른 웹사이트에서 요청하는 방법이 있는 웹사이트를 만드는 것과 관련됩니다. 이를 위해서는 버튼을 누르는 것과 같은 사용자 상호 작용이 필요할 수 있지만 상호 작용이 없을 수도 있습니다. JavaScript에는 작업이 자동으로 발생하도록 하는 방법이 있습니다. 예를 들어 0 x 0 픽셀 이미지는 사용자에게 표시되지 않지만 "src"가 다른 웹사이트에 요청하도록 구성할 수 있습니다.

JavaScript는 클라이언트 측 언어입니다. 즉, JavaScript 코드는 웹 서버가 아닌 브라우저에서 실행됩니다. 이 사실 덕분에 CSRF 요청을 하는 컴퓨터는 실제로 피해자의 컴퓨터입니다. 불행히도 이것은 사용자가 가진 모든 권한으로 요청이 이루어졌음을 의미합니다. 공격 웹사이트가 피해자를 속여 CSRF 요청을 하게 하면 요청은 기본적으로 사용자가 정상적으로 요청하는 것과 구별할 수 없습니다.

CSRF는 브라우저가 해당 권한이 없는 공격자에 의해 권한을 사용하도록 속임으로써 웹 브라우저에 대한 "혼란된 대리인 공격"의 한 예입니다. 이러한 권한은 대상 웹사이트에 대한 세션 및 인증 토큰입니다. 브라우저는 요청 시 이러한 세부 정보를 자동으로 포함합니다.

CSRF 공격은 배열하기가 다소 복잡합니다. 우선 대상 웹사이트에는 계정 삭제 등의 부작용이 있는 형식이나 URL이 있어야 합니다. 그런 다음 공격자는 원하는 작업을 수행하기 위해 요청을 작성해야 합니다. 마지막으로 공격자는 피해자가 대상 웹사이트에 로그인한 상태에서 익스플로잇이 포함된 웹페이지를 로드하도록 해야 합니다.

CSRF 문제를 방지하려면 CSRF 토큰을 포함하는 것이 가장 좋습니다. CSRF 토큰은 쿠키로 설정되는 무작위로 생성된 문자열이며 값이 포함된 요청 헤더와 함께 모든 응답에 값을 포함해야 합니다. CSRF 공격에는 쿠키가 포함될 수 있지만 헤더를 설정하기 위해 CSRF 토큰의 값을 결정할 수 없으므로 공격이 거부됩니다.



Leave a Comment

Chrome에서 항상 전체 URL을 표시하도록 강제하는 방법

Chrome에서 항상 전체 URL을 표시하도록 강제하는 방법

Chrome은 기본적으로 전체 URL을 표시하지 않습니다. 이 세부 사항에 크게 신경 쓰지 않을 수도 있지만 어떤 이유로 전체 URL을 표시해야 하는 경우 Google 크롬이 주소 표시줄에 전체 URL을 표시하도록 하는 방법에 대한 자세한 지침을 참조하세요.

이전 Reddit을 다시 얻는 방법

이전 Reddit을 다시 얻는 방법

Reddit은 2024년 1월에 다시 디자인을 변경했습니다. 변경된 디자인은 데스크톱 브라우저 사용자가 볼 수 있으며 링크를 제공하면서 기본 피드를 좁힙니다.

한국에서 암호화폐 베팅의 위험과 과제에 대한 이해

한국에서 암호화폐 베팅의 위험과 과제에 대한 이해

아시아는 카지노와 베팅 애호가들에게 큰 허브 역할을 하고 있습니다. 카지노 업계에서 암호화폐가 부상하면서 다양한 지역의 플레이어가 카지노 게임에 쉽게 참여하고 즐길 수 있게 되었습니다.

Google Lens를 사용하여 교과서의 콘텐츠를 복사하는 방법

Google Lens를 사용하여 교과서의 콘텐츠를 복사하는 방법

책에서 가장 좋아하는 인용문을 Facebook에 입력하는 것은 시간이 많이 걸리고 오류로 가득 차 있습니다. Google 렌즈를 사용하여 책의 텍스트를 기기로 복사하는 방법을 알아보세요.

Chrome에서 서버 DNS 주소를 찾을 수 없는 문제 수정

Chrome에서 서버 DNS 주소를 찾을 수 없는 문제 수정

때때로 Chrome에서 작업할 때 특정 웹사이트에 액세스할 수 없고 "Fix Server DNS 주소를 Chrome에서 찾을 수 없습니다"라는 오류가 표시됩니다. 문제를 해결하는 방법은 다음과 같습니다.

Google Home에서 알림을 만드는 방법에 대한 빠른 가이드

Google Home에서 알림을 만드는 방법에 대한 빠른 가이드

알림은 항상 Google Home의 주요 특징이었습니다. 그것들은 확실히 우리의 삶을 더 쉽게 만들어줍니다. 중요한 심부름을 놓치지 않도록 Google Home에서 알림을 만드는 방법을 빠르게 살펴보겠습니다.

넷플릭스: 비밀번호 변경

넷플릭스: 비밀번호 변경

선호하는 브라우저나 Android 앱을 사용하여 Netflix 스트리밍 비디오 서비스의 비밀번호를 변경하는 방법.

귀하(또는 다른 사람)가 Facebook에 가입한 날짜를 찾는 방법

귀하(또는 다른 사람)가 Facebook에 가입한 날짜를 찾는 방법

Facebook이 2023년에 17주년을 맞이했다는 사실을 알고 계셨나요? 시간이 빨리 흘러 여러분의 Facebook 계정이 생각보다 오래되었을 수도 있습니다.

Instagram 노트가 표시되지 않거나 작동하지 않나요? 6가지 해결 방법

Instagram 노트가 표시되지 않거나 작동하지 않나요? 6가지 해결 방법

인스타그램 노트는 인스타그램 사용자가 친구 목록에 있는 사람들이 읽을 수 있도록 짧은 메모를 남길 수 있는 기능입니다. 문제는 일부 사람들이 메시지 페이지에서 메모 옵션이 사라진다고 보고한다는 것입니다.

Snapchat에서 스냅을 재생하는 방법

Snapchat에서 스냅을 재생하는 방법

Snapchat은 사용자가 Snaps라고 하는 사진과 동영상을 친구들과 공유할 수 있는 소셜 미디어 앱입니다. 하지만 친구의 Snap을 놓치고 다시 보고 싶다면 어떻게 해야 할까요?