블로그

흐림 처리한 스크린샷은 안전할까? 직접 되읽어 봤습니다

작성 InSnap · 게시 · 흐림 효과, 모자이크, 개인정보 보호, 민감정보 가리기, 스크린샷

흐림 처리한 스크린샷은 안전할까? 직접 되읽어 봤습니다

실제 ID를 InSnap으로 흐리게 하고 모자이크를 적용한 뒤 OCR과 디컨볼루션으로 되읽어 봤습니다. 버틴 강도와 새어 나간 강도, 대신 쓸 방법을 정리합니다.

약한 흐림은 안전하지 않습니다. 강한 흐림과 모자이크는 우리 테스트에서 버텼지만, 우리가 시도한 공격에 한해서였습니다. 실제 문자열을 InSnap 자체의 모자이크와 흐림 효과 코드로 흐리게 하고 픽셀화한 뒤 다시 읽어 보려고 했습니다. 흐림 강도가 낮으면 텍스트가 되살아났습니다. 기본값에서는 되살아나지 않았습니다.

그렇다고 흐림 효과가 비밀을 숨기기에 좋은 방법이라는 뜻은 아닙니다. 이 결과는 샘플 하나에서 한계가 어디인지 보여 줄 뿐이며, 집요한 공격자는 우리가 쓴 것보다 많은 도구를 가지고 있습니다. 절대 새어 나가면 안 되는 것은 덮거나 잘라내세요.

테스트 방법

테스트에는 InSnap 자체에 있는 문자열을 사용했습니다. 설정의 기기 번호(A1B2-C3D4-E5F6-7890)를 일반 인터페이스 글자 크기에서 Retina (2x) 스크린샷으로 렌더링했습니다.

  1. InSnap 자체의 모자이크를 강도 5, 8, 10, 15, 25로, 흐림 효과를 1, 2, 3, 5, 8, 12로 적용합니다. 기본값은 모자이크 15, 흐림 효과 3입니다.
  2. 가린 줄을 잘라냅니다. 스크린샷을 공유할 때와 같은 방식입니다.
  3. InSnap의 OCR로 읽습니다. 이것이 '공유한 그대로'의 결과입니다.
  4. 흐림 효과는 되돌려 봅니다. 표준 이미지 복원 기법인 위너 디컨볼루션(Wiener deconvolution)을 사용했고, 공격자에게 흐림 크기를 정확히 알려 준다고 가정했습니다. 흐린 잘라낸 이미지를 품질 85의 JPEG로 저장한 뒤 같은 작업을 반복했습니다.

모자이크에는 이에 상응하는 되돌리기 단계가 없습니다. 블록마다 평균값만 남기 때문에 가능한 경로는 후보 텍스트를 추측하는 것뿐이며, 이것은 시도하지 않았습니다.

가린 텍스트를 되읽은 결과

결과

처리강도공유한 그대로 읽었을 때복원 시도 후
모자이크5~25 (기본값 15)읽을 수 있는 것 없음해당 없음
흐림 효과1문자열 전체문자열 전체
흐림 효과2읽을 수 있는 것 없음문자열의 65%, 복원된 이미지는 눈으로도 대부분 읽힘
흐림 효과3 (기본값)읽을 수 있는 것 없음읽을 수 있는 것 없음
흐림 효과5, 8, 12읽을 수 있는 것 없음읽을 수 있는 것 없음

품질 85의 JPEG은 결과를 거의 바꾸지 않았습니다. 흐림 1은 여전히 전부 복원되었고, 흐림 2는 비슷한 부분 복원 결과를 냈으며, 흐림 3 이상은 복원되지 않았습니다.

두 가지가 눈에 띕니다. 흐림 1은 가리기라고 할 수 없습니다. 공유한 그대로 텍스트를 읽을 수 있습니다. 또 흐림 2는 OCR로는 읽을 수 없어 보이지만, 복원 과정을 거치자 글자 대부분이 되돌아왔습니다. OCR 결과는 공격자가 읽을 수 있는 정보의 최소치이지 최대치가 아닙니다.

이 결과가 보여 주는 것과 보여 주지 않는 것

  • 샘플은 하나입니다. 큰 글자, 짧은 문자열, 단순한 배경은 더 쉽습니다. 잡음이 많은 배경의 작은 글자는 더 어렵습니다. 정확한 강도 수치는 기준선이 아니라 예시로만 보세요.
  • OCR은 약한 판독기입니다. 흐림 2 행에서 보듯, 사람이나 목적에 맞게 만든 도구는 더 잘 읽을 수 있습니다.
  • 모자이크는 공격하지 않았습니다. Depix 같은 도구는 알려진 글꼴에서 후보 글자를 대조해 픽셀화된 텍스트를 복원하려 하며, 박스 평균 방식의 픽셀화에도 작동한다고 보고되어 있습니다. "OCR이 아무것도 읽지 못했다"는 "복구할 수 없다"와 같은 말이 아닙니다.
  • 기본값은 버텼고, 약한 설정은 버티지 못했습니다. 위험은 스크린샷을 보기 좋게 유지하려고 슬라이더를 낮춘 경우입니다.

대신 쓸 방법

가리려는 대상사용할 방법
비밀번호, 토큰, API 키, 카드 번호단색 덮개, 또는 해당 영역 잘라내기
이름, 이메일, 주문 데이터단색 덮개. 위험이 낮거나 꾸며낸 데이터라면 기본값 이상의 모자이크도 괜찮습니다
얼굴강한 설정의 모자이크 또는 흐림 효과, 또는 잘라내기

InSnap에서는 도형을 고르고 사각형을 그린 다음, 스타일을 채우기로 설정하고 불투명한 색을 고르세요. 그러면 아래에 있던 텍스트는 내보낸 이미지에 들어 있지 않습니다. 자르기는 픽셀을 완전히 없앱니다. 스마트 지우개는 영역을 주변 배경으로 바꿉니다. 단색과 그라데이션 배경에서 잘 작동하며, Pro에 포함되어 있습니다. 가이드의 모든 단계를 한 번에 흐리게 하는 것까지 포함한 전체 과정은 스크린샷의 민감한 정보를 흐리거나 가리는 방법을 참고하세요.

InSnap의 모자이크와 흐림 효과

가린 뒤에는 100%로 확대해서 결과를 읽어 보세요. 글자 하나라도 짐작할 수 있다면, 공격자도 짐작할 수 있습니다.

자주 묻는 질문

스크린샷의 텍스트를 흐리게 하면 안전한가요?

그것만으로는 안전하지 않습니다. 우리 테스트에서 약한 흐림은 공유한 그대로 읽혔고, 약한 설정은 일부 복원될 수 있었습니다. 단색 채우기나 잘라내기는 픽셀을 없애므로, 비밀 정보에 믿을 수 있는 유일한 선택입니다.

모자이크가 흐림 효과보다 안전한가요?

우리 테스트에서는 모든 모자이크 강도가 OCR을 막았고, 모자이크는 디컨볼루션으로 되돌릴 수 없었습니다. 하지만 픽셀화된 텍스트도 알려진 글꼴에서 후보를 추측하는 방식으로 공격받을 수 있으므로, 비밀번호나 키를 가리기에 안전한 덮개는 아닙니다.

누군가 소프트웨어로 흐림 효과를 되돌릴 수 있나요?

때로는 가능합니다. 흐림이 약하면 이미지를 JPEG로 저장한 뒤에도 소프트웨어가 선명하게 되돌릴 수 있습니다. 더 강한 흐림은 세부 정보를 더 많이 없애지만, 비밀 정보에 대해서는 그것에 기댈 수 없습니다.

꼭 흐림 효과를 써야 한다면 어느 강도를 써야 하나요?

쓸 수 있는 가장 높은 설정을 사용하고 결과를 100%에서 확인하세요. 민감한 정보에는 채우기 도형이나 잘라내기를 대신 쓰세요.

다음 스크린샷은 단축키 하나면 됩니다.

macOS 14.4+(Apple 실리콘 및 Intel) · Windows 10+(64비트)