
WinRTおよびレガシーILocation APIを介してWindowsの地理位置情報座標を取得し、自動レジストリ権限管理を行うCobalt Strike BOF。
Cobalt Strike BOFであり、fork & runを使用せずにWindowsの地理位置情報座標を取得しようとします。最初にWinRT Geolocator APIを使用し、次にレガシーILocation APIにフォールバックします。
WinRTの地理位置情報をレガシーILocationフォールバックと共に使用するシンプルなBOFです。以下のレジストリキーを変更します。
HKCU\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location
Value = AllowHKCU\Software\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location\NonPackaged\<encoded process path>
Value = AllowHKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location
Value = AllowHKLM\SOFTWARE\Policies\Microsoft\Windows\LocationAndSensors
DisableLocation = 0DisableWindowsLocationProvider = 0HKLM\SOFTWARE\Policies\Microsoft\Windows\AppPrivacy
LetAppsAccessLocation = 1HKLM\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration
Status = 1管理者実行時は、lfsvcサービスの開始種類を一時的に「要求時開始」に変更し、サービスの開始を試みます。
すべての変更は実行後に元に戻されます。
makeを実行するGeoLocationBOF.cnaスクリプトをCobalt Strikeにインポートするgeolocation_bofを使用するbeacon> geolocation_bof
[*] Running geolocation_bof by (@codex_tf2)
[+] host called home, sent: 30095 bytes
[+] received output:
latitude=12.34567890
longitude=-12.34567890
accuracy_radius_meters=25.00
このBOFは、Windowsの地理位置情報データを直接インプロセスで要求する手段を提供することを目的としています。
いつもの免責事項です。この出来の悪いコードを使用して引き起こされる可能性のある人道に対する罪や核戦争について、私は一切の責任を負いません。