Menu dostępności

Wykonanie kodu i załadowanie złośliwej biblioteki DLL do procesu Lsass.exe przy użyciu apletu Panelu Sterowania

Wykonanie złośliwego kodu na Microsoft Windows 10 lub na wersjach systemów serwerowych Windows 2016/2019 nie należy do łatwych zadań, w szczególności, gdy posiadamy włączoną ochronę antywirusową (np. Windows Defender) i blokowane jest uruchomienie przez użytkownika niedozwolonych aplikacji (stosowana jest funkcja AppLocker). W tym artykule dowiesz się, jak za pomocą przygotowanego przez nas pliku panelu sterowana (apletu z rozszerzeniem *cpl) będzie można wywołać dowolny kod i wszczepić go do procesu w pamięci komputera (np. lsass.exe).


Aplet panelu sterowania

Panel sterowania to komponent, który zagościł w Windows już od pierwszej jego wersji, czyli 1.0. Z pewnością bardzo dobrze jest Ci znany, ponieważ za jego pomocą użytkownicy najczęściej konfigurują system. Od wersji 3.1 otrzymał interfejs graficzny, a wszystkie zadania konfiguracyjne wykonują się w nim za pomocą oddzielnych modułów o rozszerzeniu CPL zwanych apletami. Standardowe aplety umieszczone są na dysku w katalogu systemowym Windows. Dla ambitnych osób (w szczególności dla firm trzecich) Microsoft stworzył możliwość dodawania do Panelu sterowania własnych apletów, za których pomocą mogą udostępniać użytkownikom możliwość konfiguracji ustawień własnych komponentów systemowych. Nic nie dzieje się bez przyczyny, dlatego możliwość tworzenia apletów zainteresowała również cyberprzestępców, którzy za ich pomocą próbują omijać zabezpieczenia Windows i wykonywać w nich złośliwy kod. Postanowiliśmy stworzyć taki plik na cele dzisiejszego artykułu i sprawdzić na najnowszym Windows 10, czy uda nam się wykonać złośliwy kod w postaci własnej biblioteki dll.


Biblioteka DLL w C++ jako kod apletu

W celu utworzenia pliku o *.cpl stworzyliśmy kod w bibliotece DLL reprezentujący element Panelu Sterowania. Warunkiem jaki musi spełniać taki plik, aby system Windows mógł go rozpoznać jako element Panelu sterowania, to implementacja funkcji CplApplet(). Poniżej zamieściliśmy kawałek kodu naszej biblioteki apletu „Panel.dll”, która w swoim wywołaniu ładuje zewnętrzną bibliotekę „kapitanhack.dll” (opisaną w artykule tutaj) umieszczoną na dysku lokalnym w katalogu „C:\temp\”. Dzięki załadowanej do pamięci bibliotece „kapitanhack.dll”, będziemy mogli wyciągać hasła użytkowników logujących się do komputera.

Po skompilowaniu powyższej biblioteki do pliku „Panel.dll” i zmianie jej nazwy na „*.CPL” możemy ją dwukrotnie kliknąć w zwykły plik wykonywalny systemu Windows.


Inne metody uruchomienia apletu

W systemie Windows istnieją 2 metody na uruchomienie pliku apletu poprzez użycie wbudowanego w Windows programu:

  • Control.exe Uruchomienie w postaci: – Control.exe Panel.cpl
  • Rundll32.exe Uruchomienie w postaci: – rundll32 shell32, Control_RunDLL C:\Temp\Panel.cpl

Poniżej prezentujemy wynik wywołania z linii komend apletu „Panel.cpl” za pomocą programu „Control.exe”.

Poniżej prezentujemy wynik wywołania z linii komend apletu „Panel.cpl” za pomocą programu „Rundll32.exe”.

Demo całego scenariusza możesz obejrzeć na poniższym filmie:


Podsumowanie

O metodach obejścia blokad Windows pisaliśmy wcześniej na Kapitanie Hack’u tutaj. Metoda opisywana powyżej, czyli ładowania apletu cpl przy użyciu wbudowanej w Windows komendy (control.exe lub rundll32.exe) nie należy do najnowszych odkryć w dziedzinie cyberbezpieczeństwa, ale nowy jest sposób jej adaptacji. Na zabezpieczonym komputerze z Windows 10 udało nam się ja wykonać i dodatkowo załadować z niej do pamięci złośliwy kod – drugą bibliotekę „kapitanhack.dll”. Możemy chronić się przed tego typu sytuacją, ale pamiętajmy, że na blokadę zawsze znajdzie się jakiejś obejście.

Popularne

FIFA i Broken Access Control. Jak konto bez uprawnień uzyskało dostęp do systemów Mistrzostw Świata 2026

FIFA i Broken Access Control. Jak konto bez uprawnień uzyskało dostęp do systemów Mistrzostw Świata 2026

16 czerwca, czyli zaledwie pięć dni po rozpoczęciu Mistrzostw Świata 2026, badaczka cyberbezpieczeństwa działająca pod pseudonimem „BobDaHacker” opisała na swoim blogu lukę odkrytą w systemach FIFA. Według...
Ośmioletnia luka w Samsung KNOX. Miliony urządzeń Galaxy były narażone na ataki!

Ośmioletnia luka w Samsung KNOX. Miliony urządzeń Galaxy były narażone na ataki!

Badacze odkryli ośmioletnią lukę bezpieczeństwa, dotyczącą niemal wszystkich urządzeń Samsung od Galaxy S9 do S25. Została sklasyfikowana jako podatność o wysokim stopniu zagrożenia – CVSS 7.8. Luka...
External MFA w Microsoft Entra ID – koniec Custom Controls

External MFA w Microsoft Entra ID – koniec Custom Controls

MFA, czyli uwierzytelnianie wieloskładnikowe, opiera się na prostej zasadzie: samo hasło nie wystarcza. Po wpisaniu loginu i hasła użytkownik musi jeszcze potwierdzić swoją tożsamość drugim składniki...
Entra Connect Sync odchodzi w cień

Entra Connect Sync odchodzi w cień

Przez lata Microsoft Entra Connect Sync był jednym z tych elementów infrastruktury, które po prostu miały działać. Stał gdzieś w środowisku lokalnym, synchronizował użytkowników, grupy i atrybuty z Active Di...
USBLITER8. Niezałatana podatność, która podważa zaufanie do USB

USBLITER8. Niezałatana podatność, która podważa zaufanie do USB

Przez lata wydawało się, że bezpieczeństwo urządzeń USB jest tematem dobrze zrozumianym. Owszem, pojawiały się ataki wykorzystujące firmware, fałszywe klawiatury czy modyfikowane pendrive'y, ale więks...