Symantec szuka pracowników do analizy malware, w tym do siedziby w Irlandii (i kilku innych lokalizacji):
https://www.compusecjobs.com/jobs/principle-attack-investigation-engineer/
Symantec szuka pracowników do analizy malware, w tym do siedziby w Irlandii (i kilku innych lokalizacji):
https://www.compusecjobs.com/jobs/principle-attack-investigation-engineer/
Jesień w toku, zimno jak cholera, dlatego kilka ciekawych rzeczy, na które ostatnio natrafiłem.
Mateusz Jurczyk vel j00ru znalazł sporo błędów w IDA, co opisał w swojej prezentacji na:
https://j00ru.vexillium.org/?p=2454
Na blogu Grzegorza Anotniaka znajdzicie ciekawy artykuł o tzw. globbingu, naprawdę interesująca lektura dla kogoś, kto tworzy narzędzia wykorzystywane z linii komend:
http://anadoxin.org/blog/blog/20141016/enabling-globbing-in-a-console-win32-application/
Gynvael Coldwind jak zwykle nie zawodzi i na jego blogu znajdziecie tutorial ze Strefy CTF (seria artykułów dla magazynu Programista):
http://gynvael.coldwind.pl/?id=545
Sebastien Andrivet opublikował obfuscator dla C++ bazujący na metaprogramowaniu, coś co kiedyś kolega deus próbował zaimplementować bez skutku:
https://github.com/andrivet/ADVobfuscator
Michał Grzegorzewski napisał artykuł o wykorzystaniu nowego narzędzia od Microsoft – Sysmon. Oprócz tego, jeśli przejrzycie jego blog to możecie się zdziwić ile ciekawych wpisów na temat internalsów Windowsa popełnił:
http://zine.net.pl/blogs/mgrzeg/archive/2014/10/17/sysmon.aspx
Z innych ciekawych rzeczy, o których w sumie niedawno się dowiedziałem i co mnie zaskoczyło to zakończenie produkcji exe-protectora i systemu licencyjnego Armadillo aka Software Passport:
Świeczka na drogę [i] w postaci uniwersalnego unpackera dilloDIE 😛
Fabian “ryg” Giesen znany koder z grupy demoscenowej Farbrausch napisał o wadach i zaletach systemów little i big endian oczami programisty:
http://fgiesen.wordpress.com/2014/10/25/little-endian-vs-big-endian/
ROCKEY2 jest prostym kluczem sprzętowym (tzw. dongle), wykorzystywanym
m.in. w systemach licencyjnych oprogramowania.
Całe zabezpieczenie opiera się także na envelope (czyli exe-protectorze), jednak ze względu na prostotę tego konkretnego modelu klucza nie polecałbym jego stosowania w zabezpieczeniu oprogramowania.
ROCKEY2 posiada wbudowaną pamięć, składającą się z 5 bloków po 512 bajtów każdy.
Poniżej znajdziecie kod pozwalający odczytać wszystkie banki pamięci klucza. Wymagana jest do tego znajomość poprawnego identyfikatora użytkownika (uid), a do kompilacji potrzebne Wam będzie SDK tegoż klucza.
#include <windows.h>
#include <stdio.h>
#include "Rockey2.h"
// prosta funkcja zapisujaca zawartosc bufora do pliku
void save_file(char *file_name, char *buffer_bytes, size_t buffer_size)
{
FILE *file_handle = NULL;
file_handle = fopen(file_name, "wb+");
fwrite(buffer_bytes, 1, buffer_size, file_handle);
fclose(file_handle);
}
// zapisuje wybrany blok pamieci klucza Rockey2 do pliku
void dump_rockey2_block(int key_handle, int block_index, char *file_name)
{
BYTE buffer_bytes[512] = { 0 };
int result = 0;
result = RY2_Read(key_handle, block_index, buffer_bytes);
save_file(file_name, buffer_bytes, sizeof(buffer_bytes));
}
int main(int argc, char **argv)
{
// liczba znalezionych kluczy
int keys_count = 0;
// uchwyt otworzonego klucza
int key_handle = 0;
int i = 0;
// identyfikator klucza potrzebny do jego otwarcia
DWORD uid = 0x12345678;
DWORD hid = 0;
printf("[i] memory dumper dla kluczy Rockey2 - www.secnews.pl\n");
// znajdz aktualnie dostepne klucze Rockey2
keys_count = RY2_Find();
if (keys_count == 0)
{
printf("[!] nie znaleziono zadnych kluczy Rockey!");
return 1;
}
printf("[i] znalezionych kluczy Rockey2 = %i\n", keys_count);
// otworz klucz korzystajac z parametru UID
key_handle = RY2_Open(1, uid, &hid);
if (key_handle < 0)
{
printf("[!] nie udalo sie uzyskac dostepu do klucza (bledny uid?)!");
return 2;
}
printf("[i] uchwyt klucza = %08X, HardwareId = %08X\n", key_handle, hid);
// odczytaj wybrane bloki pamieci klucza
// Rockey2 posiada 5 blokow po 512 bajtow kazdy
dump_rockey2_block(key_handle, 0, "block_dump_0.bin");
//dump_rockey2_block(key_handle, 1, "block_dump_1.bin");
//dump_rockey2_block(key_handle, 2, "block_dump_2.bin");
//dump_rockey2_block(key_handle, 3, "block_dump_3.bin");
//dump_rockey2_block(key_handle, 4, "block_dump_4.bin");
// zamknij klucz
RY2_Close(0);
return 0;
}
Fajny tutek prezentujący deszyfrowanie savegame’ów w platformówce „I Wanna be The Boshy”.
http://punkrockhacker.blogspot.com/2014/10/hacking-i-wanna-be-boshy-game-saves.html
Swoją drogą, pamiętacie sekcje w Top Secret i innych magazynach z grami, w których namiętnie nadsyłano offsety do savegame’ów?
RDG Packer Detector — to detektor packerów, exe-protectorów, joinerów, kompilatorów i binderów. Dzisiaj ukazała się nowa wersja 0.7.3.
Oficjalna strona projektu:
http://rdgsoft.net
Bezpośredni link do pobrania:
http://www.rdgsoft.net/downloads/RDG%20Packer%20Detector%20v0.7.3.2014.rar
Analiza droppera trojana FinFisher, który zgodnie z doniesieniami WikiLeaks wykorzystywany jest przez wiele agencji rządowych do szpiegowania.
Dokumentacja jak i binarne kopie trojana:
https://wikileaks.org/spyfiles4/
Tutorial z analizą:
https://www.codeandsec.com/FinFisher-Malware-Dropper-Analysis
PS. Wpis ten dedykowany jest wszystkim anonimowym wojownikom sieci, których jara niszczenie rządowych trojanów heh 😉