{'xhtml:p': ['An adversary collects information about the target system in an attempt to identify the system's geographical location.', 'Information gathered could include keyboard layout, system language, and timezone. This information may benefit an adversary in confirming the desired target and/or tailoring further attacks.']}
Description
Attack Execution Flow
Step 1
Explore[System Locale Information Discovery] The adversary examines system information from various sources such as registry and native API functions and correlates the gathered information to infer the geographical location of the target system
Registry Query: Query the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ContentIndex\Language\Language_Dialect on Windows to obtain system language, Computer\HKEY_CURRENT_USER\Keyboard Layout\Preload to obtain the hexadecimal language IDs of the current user's preloaded keyboard layouts, and Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation to obtain the system timezone configuration
Native API Requests: Parse the outputs of Windows API functions GetTimeZoneInformation, GetUserDefaultUILanguage, GetSystemDefaultUILanguage, GetKeyboardLayoutList and GetUserDefaultLangID to obtain information about languages, keyboard layouts, and timezones installed on the system or on macOS or Linux systems, query locale to obtain the $LANG environment variable and view keyboard layout information or use timeanddatectl status to show the system clock settings.
Read Configuration Files: For macOS and Linux-based systems, view the /etc/vconsole.conf file to get information about the keyboard mapping and console font.
[System Locale Information Discovery] L'avversario esamina le informazioni di sistema da varie fonti come il registro di sistema e le funzioni API native, e correla le informazioni raccolte per dedurre la posizione geografica del sistema target
Query del Registro: Interroga la chiave di registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ContentIndex\Language\Language_Dialect su Windows per ottenere la lingua di sistema, Computer\HKEY_CURRENT_USER\Keyboard Layout\Preload per ottenere gli ID di lingua esadecimali delle configurazioni di layout della tastiera pre-caricate dall'utente corrente, e Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation per ottenere la configurazione del fuso orario di sistema
Richieste API Native: Analizza gli output delle funzioni API di Windows GetTimeZoneInformation, GetUserDefaultUILanguage, GetSystemDefaultUILanguage, GetKeyboardLayoutList e GetUserDefaultLangID per ottenere informazioni su lingue, layout di tastiera e fusi orari installati sul sistema o su sistemi macOS o Linux, interroga locale per ottenere la variabile d'ambiente $LANG e visualizza le informazioni sul layout della tastiera o utilizza timeanddatectl status per mostrare le impostazioni dell'orologio di sistema.
Leggi i File di Configurazione: Per sistemi basati su macOS e Linux, visualizza il file /etc/vconsole.conf per ottenere informazioni sulla mappatura della tastiera e sul font della console.
Attack Techniques
-
Read Configuration Files: For macOS and Linux-based systems, view the /etc/vconsole.conf file to get information about the keyboard mapping and console font.
-
Registry Query: Query the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ContentIndex\Language\Language_Dialect on Windows to obtain system language, Computer\HKEY_CURRENT_USER\Keyboard Layout\Preload to obtain the hexadecimal language IDs of the current user's preloaded keyboard layouts, and Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation to obtain the system timezone configurationIT: Leggere i file di configurazione: per sistemi macOS e Linux, visualizzare il file /etc/vconsole.conf per ottenere informazioni sulla mappatura della tastiera e sul carattere del console.
-
Native API Requests: Parse the outputs of Windows API functions GetTimeZoneInformation, GetUserDefaultUILanguage, GetSystemDefaultUILanguage, GetKeyboardLayoutList and GetUserDefaultLangID to obtain information about languages, keyboard layouts, and timezones installed on the system or on macOS or Linux systems, query locale to obtain the $LANG environment variable and view keyboard layout information or use timeanddatectl status to show the system clock settings.IT: Leggere i file di configurazione: per sistemi macOS e Linux, visualizzare il file /etc/vconsole.conf per ottenere informazioni sulla mappatura della tastiera e sul carattere del console.