NFsec Logo

trap – persystencja po wyjściu z powłoki

28/03/2026 (2 tygodnie temu) w Bezpieczeństwo, Pen Test Możliwość komentowania trap – persystencja po wyjściu z powłoki została wyłączona

E

vent Triggered Execution (T1546.005) to technika w ramach MITRE ATT&CK, która opisuje, w jaki sposób atakujący mogą ustanowić mechanizm persystencji w systemie poprzez wykonywanie złośliwego kodu lub poleceń za pomocą przechwyconych przerwań programowych służących do komunikacji między procesami nazywanych w systemach *nix – sygnałami. Przykładem tutaj może być program trap, który pozwala programom i powłokom określać polecenia, które zostaną wykonane po otrzymaniu sygnałów przerwania. Jego typowym zastosowaniem jest tworzenie solidnych i odpornych na różne niestabilności skryptów powłoki zapewniając ich poprawne zakończenie poprzez wykonywanie awaryjnych sekwencji poleceń lub funkcji. Najprostszym przykładem może być tutaj obsługa przerwań wygenerowanych przez klawisze klawiatury, takich jak ctrl+c i ctrl+d. Niestety atakujący może również użyć tego polecenia do wykonywania swojego kodu, gdy powłoka użytkownika / administratora napotka określone przerwania. W ten sposób może wpisać się w taktykę eskalacji uprawnień (uzyskania przywilejów wyższego poziomu) lub trwałego dostępu do systemu (utrzymania swojej obecności podczas restartów i zmiany poświadczeń skompromitowanego konta).
[ czytaj całość… ]

Niektóre znaki zachęty mogą być podatne na wykonanie kodu

19/03/2017 w Bezpieczeństwo Możliwość komentowania Niektóre znaki zachęty mogą być podatne na wykonanie kodu została wyłączona

C

iekawe demo oraz słuszność swojego pomysłu przedstawił N.J. Hartwell. Pokazuje on, że niektóre znaki zachęty szczególnie te, którym dołożono wyświetlanie nazwy brancha git mogą być podatne na wykonanie dowolnego kodu. Można oszukać naszą, lokalną powłokę, aby wykonała polecenie lub skrypt, jeśli nazwiemy nasz branch na przykład tak: $(./skrypt.sh). Jak sprawdzić czy nasz prompt jest podatny? Wystarczy, że ściągniemy to repozytorium i wejdziemy do niego za pomocą polecenia cd. Jeśli prompt naszej powłoki niepoprawnie przeprowadzi interpretację zestawu znaków $(..) to wykona skrypt ./pw3n i wyświetli (na szczęście) tylko odpowiedni komunikat.