글

라벨이 security인 게시물 표시

웹사이트 캡쳐 방어

인프런 강의 캡쳐 방어 캡쳐 안되길래 신기했음. 웹인데도  DRM 으로 강의 캡쳐를 막아서 캡쳐 도구를 감지하는게 신기 --- 인프런 강의에서 캡쳐 방어가 되어 있는 걸 보면, 보안 수준을 꽤 신경 쓴 것 같네요. 웹 환경에서도 캡쳐를 막는 방법에는 여러 가지가 있는데, 보통 DRM(Digital Rights Management)이나 JavaScript 기반 방어 기법을 조합해서 사용하는 경우가 많아요. ### 📌 **웹에서 캡쳐 방어하는 방법들** 1.  **DRM 적용 (Widevine, PlayReady, FairPlay 등)**     -   동영상 자체를 암호화하고, 특정 인증을 받은 환경에서만 재생되도록 설정.     -   이 방식이면 캡쳐 소프트웨어에서도 녹화가 안 될 가능성이 큼.     -   보통 비디오 스트리밍 서비스에서 사용. 2.  **CSS 및 JavaScript 방어**     -   `pointer-events: none;`을 이용해 우클릭 및 개발자 도구 방지.     -   `visibility:hidden` 같은 스타일을 사용하여 특정 조건에서 콘텐츠 숨기기.     -   `oncontextmenu="return false;"`로 우클릭 방지. 3.  **Canvas Fingerprinting 및 Tamper Detection**     -   `Canvas API`를 이용해 브라우저의 스크린샷 감지.     -   DevTools에서 특정 키 입력을 감지하고 강제 종료하거나, `debugger` 키워드로 디버깅 방해. 4.  **Blur 처리 및 Overlay 적용**     -...

클릭 재킹이란

 클릭재킹(Clickjacking)은 사용자가 의도한 것과 다른 작업을 수행하게 만드는 공격 방식입니다. 이 공격자는 투명한 레이어나 숨겨진 프레임을 사용하여 사용자가 클릭하려고 의도한 웹 페이지 위에 다른 웹 페이지를 겹칩니다. 사용자는 자신이 클릭하려고 했던 버튼을 클릭하는 줄 알지만 실제로는 공격자가 의도한 다른 버튼이나 링크를 클릭하게 됩니다. 이로 인해 사용자는 무의식적으로 위험한 행동을 할 수 있게 됩니다. 클릭재킹을 막기 위한 몇 가지 방법은 다음과 같습니다: 1. **X-Frame-Options (XFO) 헤더 사용**: 웹 서버의 응답 헤더에 X-Frame-Options를 설정하여 페이지가 iframe 내에서 로드되지 않도록 할 수 있습니다. 예를 들면, `X-Frame-Options: DENY` 또는 `X-Frame-Options: SAMEORIGIN` 설정을 사용하면 됩니다. 2. **Content Security Policy (CSP)**: CSP의 `frame-ancestors` 지시문을 사용하여 특정 소스에서만 페이지를 임베드 할 수 있도록 제한할 수 있습니다. 3. **프레임 버스팅 스크립트**: 자바스크립트를 사용하여 웹페이지가 iframe 내에서 로드되었는지 확인하고, 로드된 경우 웹페이지를 전체 브라우저 창으로 재로드하는 기술입니다. 4. **시각적 확인**: 웹 사이트에서 중요한 행동을 수행하기 전에 추가적인 시각적 확인(예: CAPTCHA 또는 슬라이더)을 요구함으로써 사용자의 의도된 행동을 확인할 수 있습니다. 5. **사용자 인식 훈련**: 사용자에게 클릭재킹 공격에 대한 정보를 제공하여 그들이 의심스러운 웹사이트나 행동을 발견할 때 조심스러워하게 만드는 것도 중요합니다. 이러한 방법들 중 일부 또는 모두를 조합하여 클릭재킹 공격으로부터 웹사이트를 보호할 수 있습니다.