728x90

나 : 메모리 덤프를 통해서 브라우저 단의 정보를 탈취해 가는 것을 막으려면 

어떤 보안조치를 해야할까?

 

구글이 알려준 "메모리 덤프"


ChatGPT : 메모리 덤프는 악성 코드가 실행 중인 프로세스의 메모리를 검색하여 중요 정보를 탈취하는 데 사용되는 기술입니다. 따라서 브라우저 단에서 메모리 덤프를 막으려면 다음과 같은 보안조치를 취할 수 있습니다.

취약점 패치: 브라우저 취약점을 해결하는 패치를 적용하여 메모리 덤프를 방지할 수 있습니다. 브라우저 공급 업체는 취약점을 신속하게 패치하고 최신 버전으로 업데이트하도록 권장됩니다.

보안 설정 강화: 브라우저 보안 설정을 강화하여 악성 코드가 실행되는 것을 방지할 수 있습니다. 이는 인터넷 보안 소프트웨어를 사용하여 공격을 탐지하고 차단하는 것과 같은 방법으로 이루어질 수 있습니다.

데이터 암호화: 브라우저에서 중요한 정보를 보호하기 위해 데이터 암호화를 구현할 수 있습니다. 이를 위해서는 SSL/TLS 프로토콜을 사용하여 데이터를 암호화하고 HTTPS를 사용하여 웹 사이트 연결을 보호해야 합니다.

메모리 보호: 브라우저는 메모리 보호 기술을 사용하여 실행 중인 코드가 다른 프로세스의 메모리를 읽거나 쓸 수 없도록 할 수 있습니다. 이를 위해서는 예를 들어 ASLR(Address Space Layout Randomization)과 같은 기술을 사용하여 메모리 주소를 무작위로 할당하고, 실행 파일에 대한 메모리 보호 기능을 활성화해야 합니다.

보안 인증서 검증: 브라우저는 SSL 인증서의 유효성을 검증하여 악성 인증서를 사용하는 웹 사이트에서의 연결을 방지할 수 있습니다. 이를 위해서는 인증서 검증 기능을 활성화해야 합니다.

보안 소프트웨어 설치: 인터넷 보안 소프트웨어를 설치하여 브라우저를 보호할 수 있습니다. 이러한 소프트웨어는 악성 코드를 탐지하고 차단하여 브라우저에서 발생하는 보안 위협을 줄일 수 있습니다.

이러한 보안조치를 적용하여 브라우저 단의 정보를 탈취하는 메모리 덤프를 방지할 수 있습니다. 그러나 보안은 끝이 없기 때문에, 완벽하다고 보장할 수는 없습니다.




나 : SSL 암호화 만으로는 메모리 덤프 될 때 탈취되는 정보를 지킬 수 없는 거 아니니?


ChatGPT : 맞습니다. SSL 암호화는 데이터를 안전하게 전송하는 데에 도움을 주지만, 메모리 덤프를 통해 브라우저에서 실행 중인 애플리케이션의 정보가 노출될 가능성이 있습니다. 이러한 공격은 SSL 암호화가 강력하게 적용되더라도 메모리 덤프를 통해 정보를 탈취할 수 있는 것으로 알려져 있습니다.

따라서 메모리 덤프를 방지하기 위해서는 SSL 암호화 외에도 다른 보안조치를 취해야 합니다. 먼저, 애플리케이션에서 중요한 정보를 저장하는 변수를 암호화하여 보호할 수 있습니다. 또한, 메모리 보호 기술을 사용하여 메모리 덤프를 차단하고, 인증서 검증, 보안 소프트웨어 설치 등 다양한 보안조치를 함께 적용하여 보안을 강화할 수 있습니다.

또한, 애플리케이션 내에서 중요한 정보를 최소한으로 유지하고, 처리가 완료되면 즉시 메모리에서 삭제하도록 구현함으로써 정보 노출을 최소화할 수도 있습니다. 이러한 방법들은 SSL 암호화 외에도 보안성을 향상시키고, 메모리 덤프에 대한 위협을 줄일 수 있는 방법입니다.

300x250
728x90

TLS 암호화를 써도 메모리덤프 등으로 조회하면 다 노출이 되는 리스크가 있는걸까?

TLS는 데이터를 전송하는 동안 암호화를 제공하여 데이터를 안전하게 전송하는 프로토콜입니다. TLS를 사용하면 데이터가 암호화되므로 네트워크상에서 중간에 가로채어도 알아볼 수 없습니다. 그러나 TLS는 데이터가 메모리에 저장될 때는 암호화되지 않으며, 이 때 메모리 덤프가 있을 경우 데이터가 노출될 가능성이 있습니다.

메모리 덤프란 프로그램이 실행되는 동안 시스템 메모리에 저장된 내용을 파일로 저장하는 것입니다. 메모리 덤프를 수행하는 공격자가 있을 경우, TLS로 보호되는 데이터가 메모리에 저장될 때는 암호화되지 않으므로, 공격자가 해당 파일을 열어보면 데이터가 노출될 가능성이 있습니다.

그러나 이는 TLS 프로토콜 자체의 문제가 아니라 시스템 보안의 문제입니다. TLS를 사용할 경우, 데이터를 전송하는 동안에는 안전하게 암호화되므로 중간에서 데이터를 가로채더라도 알아볼 수 없습니다. 따라서 시스템 보안을 강화하여 메모리 덤프 등의 공격을 방어하는 것이 중요합니다. 예를 들어, 메모리 덤프를 방지하는 솔루션이나, 메모리 상에 저장된 데이터를 암호화하는 솔루션 등을 적용할 수 있습니다.

 

 

여기서 메모리덤프는 어떤 컴퓨터의 메모리를 이야기하는 걸까?

메모리 덤프(memory dump)는 컴퓨터의 물리적 메모리(RAM)에 저장된 내용을 파일로 덤프하는 것을 말합니다. 즉, 프로그램이나 운영체제 등이 메모리에 올린 데이터나 코드, 변수 등이 파일 형태로 저장되는 것입니다.

메모리 덤프는 보안 전문가나 해커 등이 시스템의 보안 취약점을 분석하거나, 디버깅을 위해 사용되기도 합니다. 하지만 악의적인 목적으로 사용될 경우, 메모리 덤프를 통해 시스템에서 중요한 정보를 탈취하는 등의 공격이 이루어질 수 있습니다. 따라서 시스템 보안을 강화하는 것이 중요합니다.

 

 

모바일에서 웹서비스로 https 로 통신되는 서비스를 이용하는 경우에, 메모리 덤프로 이용자의 데이터가 노출될 수 있을까?

모바일에서 웹 서비스로 HTTPS를 통해 통신하는 경우, 데이터는 암호화되어 전송되므로 중간에 가로채어도 데이터를 복호화하지 않으면 의미가 없습니다. 따라서 HTTPS를 사용하는 경우, 중간에 데이터를 가로채더라도 데이터가 노출될 가능성은 매우 적습니다.

그러나 메모리 덤프 공격을 받을 경우, 앱의 메모리에 저장된 데이터가 노출될 가능성이 있습니다. 메모리 덤프 공격은 모바일 앱에서도 가능하며, 메모리 덤프 파일을 수집한 공격자는 해당 파일을 분석하여 중요한 정보를 추출할 수 있습니다.

따라서 모바일 앱에서도 HTTPS를 사용하여 데이터를 암호화하고, 민감한 정보는 메모리에 저장하지 않는 것이 좋습니다. 또한, 모바일 앱에서는 안드로이드나 iOS와 같은 운영체제에서 제공하는 보안 기능을 이용하여 메모리 덤프 공격을 방어할 수 있습니다. 더불어, 적절한 취약점 분석과 보안 검토를 통해 앱 보안을 강화하는 것이 필요합니다.

 

 

웹서비스를 이용하는 모바일기기의 메모리덤프 공격을 하려면 어떤 권한을 획득해야 가능할가?

웹서비스를 이용하는 모바일 기기의 메모리 덤프 공격을 하기 위해서는 보통 해당 모바일 앱의 권한을 획득해야 합니다. 따라서, 공격자는 해당 앱의 취약점을 이용하여 권한 상승을 시도하거나, 앱을 해킹하여 권한을 획득해야 할 수 있습니다.

일반적으로 안드로이드 기기에서는 권한을 획득하기 위해서는 앱에게 권한을 요청하고, 사용자가 권한을 허용해야 합니다. 그러나, 모바일 앱에 취약점이 있을 경우, 공격자는 해당 취약점을 이용하여 권한을 상승시키는 방법을 시도할 수 있습니다.

또한, iOS 기기에서도 취약점을 이용하여 권한을 상승시키는 방법이 있을 수 있습니다. 예를 들어, iOS의 경우 앱 간 공유 컴포넌트를 이용하여 다른 앱의 권한을 이용할 수 있는 취약점이 발견된 적이 있습니다.

따라서, 모바일 앱 개발자는 모바일 앱 보안을 강화하는 것이 중요하며, 앱에 취약점이 있는지 주기적으로 검토하여 보안 취약점을 최소화하는 것이 필요합니다.

 

단말기를 획득하고, 
획득한 단말기의 권한(루팅, 탈옥)을 획득하고, 
메모리 덤프를 뜨게 되면,
취약점이 있는 앱서비스, 웹서비스 등을 사용했다면,
해당 유저의 중요 개인 정보들은 모두 노출이 되게 된다. 

 

 

다음번에는 웹취약점의 가장 기본, OWASP TOP 10에 대해서도 알아보겠습니다 ! :) 

300x250

+ Recent posts