현대 네트워크 기반 바이러스는 팀으로 작동합니다 – 트로이 목마 바이러스, 랜섬웨어, 그리고 Mimikatz입니다. 랜섬웨어는 수익 창출자 역할을 하며, 이러한 역할의 이유는 쉽게 이해됩니다. 회사의 모든 컴퓨터에 있는 모든 데이터, 보고서, 송장, 운송장, 그리고 다양한 필수 문서가 암호화되어 비즈니스 운영이 불가능합니다. 그러나 모든 컴퓨터를 동시에 감염시키는 것은 어렵습니다. 대부분이 비밀번호를 사용하기 때문입니다. 이러한 장애물을 제거하기 위해 랜섬웨어 개발자들은 해킹 도구를 사용하여 비밀번호를 수집하기로 결정했습니다. Mimikatz는 가장 인기 있는 해킹 도구 중 하나로 악성 소프트웨어 제작자들이 보안 방어를 무력화하는 데 사용합니다. 이 기사에서는 Windows 취약점의 설명과 함께 Mimikatz 사용 방법을 트로이 목마 바이러스와 랜섬웨어와 함께 볼 수 있습니다.
Windows 암호 관리 시스템 정보
사람들은 종종 Windows가 비밀번호를 평문 형식으로 저장하지 않는다는 의견을 듣기도 합니다 (즉, 암호화 없이 평문으로 저장하지 않는다). 이러한 오해는 시스템 관리자와 경험있는 Windows 사용자들 사이에 고르게 퍼져 있습니다. 한편으로, 그들의 주장은 맞을 수 있습니다 – 로그나 파일에서 “평문” 비밀번호를 보는 일은 거의 없을 것입니다. 그러나 Windows 10에서 사용되는 HTTP 다이제스트 인증 시스템은 원래 HTTP 다이제스트 인증처럼 비밀번호의 해시뿐만 아니라 정확한 비밀번호도 요구합니다.
비밀번호와 해당 해시는 LSASS.exe 프로세스의 메모리에 암호화하여 저장됩니다. 이 프로세스는 시스템과 함께 시작되며 기본 시스템 기능 실행을 담당하는 저수준 프로세스에 속합니다. Windows 계정으로 로그인하려 할 때, 해시와 비밀번호는 LSASS.exe 메모리에서 추출되어 복호화되고 입력한 비밀번호와 비교됩니다. 해시와 비밀번호가 모두 일치하면 시스템이 로그인을 허용합니다. 인증이 완료되면 언급한 인증 정보는 다시 암호화되어 LSASS 프로세스의 메모리에 필요할 때까지 보관됩니다.
문제가 무엇입니까?
추출 및 복호화 과정, 인증 프로세스 이후의 암호화와 마찬가지로, Win32 함수 LsaUnprotectMemory 및 LsaProtectMemory를 통해 구현됩니다.1. 이러한 함수들은 다른 함수와 동일하게 운영 체제에서 사용되기 때문에 다른 프로그램, 예를 들어 해킹 도구에서도 사용될 수 있습니다. Mimikatz가 사용하는 특정 알고리즘을 사용하여 이러한 도구들은 LsaUnprotectMemory를 호출하여 콘솔에서 “원시” 비밀번호와 해당 해시를 얻을 수 있습니다.
이러한 도구 사용의 문제는 CPU와 운영 체제 상호 작용 메커니즘 내부에 숨겨져 있습니다. Windows 부트 레코드가 초기화된 후 프로세서는 서로 격리된 가상 메모리 레벨인 “링(ring)”을 생성합니다. 프로세서의 명령어 집합은 링 0에, 마더보드 관련 장치 드라이버는 링 1에, 운영 체제 기본 프로세스와 주변 기기 드라이버는 링 2에 배치됩니다. 전체 운영 체제(사용자와 상호 작용하는 부분)는 링 3에 위치합니다. 2. 별개의 링에서 작동하는 프로그램들은 상호 작용할 수 없습니다. 따라서 해킹 도구는 간단한 프로그램보다 더 큰 것이어야 하며, 성공적으로 작동하려면 반드시 주변 기기 드라이버와 시스템 프로세스가 있는 같은 링에서 실행되어야 합니다. Mimikatz는 이러한 기준을 충족시키도록 설계되었습니다.
만약 바이러스가 시스템 안에서 깊이 구현되면 전체 컴퓨터를 제어할 수 있습니다. 다행히도, Mimikatz는 시스템에서 비밀번호를 탐지하도록 설계되어 Windows를 파괴할 수 없습니다. 하지만 트로이 목마 바이러스를 개발하고 유포한 사이버 범죄자들이 Mimikatz를 사용하여 비밀번호를 해킹하기로 결정한다고 가정해 보겠습니다. 그렇다면 이들이 시스템의 오동작을 유발하는 다른 저수준 도구를 사용하는 데 어떤 문제가 있을까요?
Mimikatz와 랜섬웨어 합동 조치 정보
기업 네트워크 감염은 쉬운 일이 아닙니다. 이를 위해 초기 바이러스(보통 트로이 목마)가 이후에 랜섬웨어를 주입할 수 있도록 이 네트워크의 모든 컴퓨터에 액세스해야 합니다. 그리고 Mimikatz는 이를 수행하기 위해 악성 소프트웨어 유포자들에게 이러한 액세스 권한을 부여하는 데 사용됩니다.
네트워크의 모든 컴퓨터를 성공적으로 해킹하기 위해, Mimikatz는 관리자 사용자 계정이 있는 컴퓨터에 주입되어야 합니다. 시스템 관리자의 PC일 수도 있고 비서나 직원 중 한 명의 컴퓨터일 수도 있습니다 – 어느 것이든 상관없습니다. 주요 기준은 관리자 사용자 계정입니다. 이러한 계정으로 Mimikatz는 공격 대상 네트워크에 연결된 모든 컴퓨터의 비밀번호를 해킹할 수 있습니다. 비밀번호가 해킹된 후, 해킹 도구를 이전에 주입한 트로이 목마가 해당 네트워크의 모든 컴퓨터에 랜섬웨어를 주입하고, 그런 다음 암호화 프로세스를 시작합니다. 이와 함께 해킹 유틸리티와 함께 주입된 백도어를 사용합니다.
모든 현대적인 글로벌 공격은 이러한 방식으로 이루어졌습니다. WannaCry의 세계적인 공격과 그 파생 프로그램들은 Mimikatz와 언급된 랜섬웨어의 공동 활동으로 인해 정확하게 이루어졌습니다. 이러한 공격은 대규모로 이루어져서 대규모 기관들의 네트워크 안전성에 필요한 모든 개선을 만들어냈습니다. 그러나 지금은 2020년, 미국 병원들이 같은 방식으로 랜섬웨어 공격에 시달리고 있습니다. 기업 전체적인 공격의 가장 큰 비중은 DOPPELPAYMER 랜섬웨어를 이후로 차지하고 있으며, 이는 Mimikatz와 트로이 목마 바이러스와 협력하여 전체 네트워크를 감염시키고 회사의 규모에 따라 거대한 랜섬금을 요구합니다. DOPPLEPAYMER 개발자들은 파일 암호화 외에도 공격한 회사의 데이터를 도용합니다.
네트워크에서 랜섬웨어 공격을 피하는 방법은 무엇입니까?
대부분의 “악역적인 작업”은 Mimikatz가 수행합니다. 그러므로, 성공적인 랜섬웨어 공격의 가능성을 줄이기 위해서는 Mimikatz의 성공적인 활동을 방지해야 합니다. 비밀번호 해킹을 방지하는 유일한 방법은, 그것을 설명된 LSASS.exe 프로세스의 메모리에서 제거하는 것입니다. Microsoft는 이러한 경우에 완벽한 해결책을 제공합니다 – 시스템에서의 인증 방법으로 Microsoft 계정 사용입니다.
Microsoft 계정으로 로그인하면 LSASS 메모리에 비밀번호를 저장하지 않게 됩니다 – 비밀번호는 Microsoft 서버에 보관됩니다. 해시는 여전히 사용 가능하지만, 해시만 가지고 “원시” 비밀번호를 얻는 것은 어렵습니다. 따라서, 간단한 한 가지 단계로, 시간과 문제 없이, 적어도 시스템을 이러한 랜섬웨어의 도우미로부터 보호할 수 있습니다.
이미 언급했듯이, 모든 랜섬웨어 공격은 트로이 목마 바이러스에 의해 유발됩니다. Trojan 주입은 우리 웹사이트의 다수의 기사에서 설명한 방법으로 예방할 수 있습니다.
- 이메일의 의심스러운 링크를 클릭하지 마세요. 이는 트로이 목마, 애드웨어 또는 사기 웹사이트 다운로드로 이어질 수 있으며, 페이스북/트위터/링크드인 계정 정보가 도용될 수 있습니다.
- 의심스러운 이메일 주소로부터 온 첨부 파일을 열지 마세요. 배송 서비스에서 온 메시지처럼 보이더라도, 보류 중인 배송이 있는지 다섯 분 동안 기억해보는 것이 좋습니다. 가장 좋은 시나리오는 배송 회사의 웹사이트에서 실제 이메일을 확인하고 이메일에 있는 주소를 확인하는 것입니다.
- 무단으로 소프트웨어를 사용하지 마세요 또는 크랙 프로그램을 사용하지 마세요. 소프트웨어를 크랙한 사용자들은 트로이 목마 바이러스를 설치 패키지에 추가하여 돈을 벌 수 있으며, 크랙 툴 개발자들과 동일합니다.
이러한 간단한 규칙은 대부분의 랜섬웨어 공격을 피하는 데 도움이 됩니다.
User Review
( votes)References
- LSASS.exe 프로세스 함수에 대한 기술적 세부 정보
- 메모리 격리에 대한 더 자세한 정보는 Wikipedia에서 확인하세요