Napisał: Patryk Krawaczyński
04/11/2023 w Pen Test
Z
amieniliśmy już edytor vim w rejestrator naciskanych klawiszy, teraz umieścimy w nim mechanizm persystencji. Plik konfiguracyjny .vimrc
zawiera konfigurację dla tego edytora, a dzięki wtyczkom, modułom sprawdzania i kolorowania składni oferuje nieograniczone możliwości dostosowywania do użytkownika. Istnieją również sposoby wykonywania poleceń powłoki i dowolnych skryptów. Biorąc pod uwagę, że przy każdym uruchomieniu programu vim ładowany jest plik .vimrc
, okazuje się, że jest to świetny sposób na regularne wykonywanie zadań, takich jak sprawdzanie, czy jest dodany odpowiedni klucz SSH do systemu. Staje się to jeszcze bardziej interesujące podczas, gdy edytor uruchamia administrator.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
16/05/2023 w Administracja
O
d wersji Apache 2.4.26 dostępny jest moduł umożliwiający kompresję statycznych elementów strony za pomocą algorytmu brotli. Jego szybkość jest podobna do gzip, ale zapewnia wyższą kompresję. Aktualnie algorytm ten jest już obsługiwany przez wszystkie główne przeglądarki, takie jak: Chrome, Firefox, Safari i Edge. W poniższej konfiguracji włączymy kompresję brotli dla reprezentatywnej grupy statycznych plików, ale zapewnimy również powrót do kompresji gzip, gdyby klient nie obsługiwał tej pierwszej.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
05/04/2023 w Bezpieczeństwo
Przeglądając na bieżąco raporty odnośnie szkodliwego oprogramowania przeznaczonego dla systemów Linux – można dojść do wniosku, że wszystkie warianty można połączyć poprzez wykrywanie poleceń curl lub wget ściągających ładunek z publicznego adresu IP:
=~ (curl|wget).*(\b25[0-5]|\b2[0-4][0-9]|\b[01]?[0-9][0-9]?)
(\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}(:[0-9]+)?\/.+.*
W celu wykluczenia fałszywych alarmów (szczególnie w centrach danych) można połączyć to z regułą, która wykluczy komunikację w ramach lokalnych sieci:
!=~ (curl|wget).*((127(?:\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3})|
(10(?:\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3})|
(192\.168(?:\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){2})|
(172\.(?:1[6-9]|2\d|3[0-1])(?:\.(25[0-5]|2[0-4][0-9]|
[01]?[0-9][0-9]?)){2}|169\.254\.169\.254|0\.0\.0\.0))(:[0-9]+)?\/.+.*
Więcej informacji: How Malicious Actors Abuse Native Linux Tools in Attacks, Log4j Attack Payloads In The Wild, Triaging a Malicious Docker Container, Attackers exploit CVE-2021-26084 for XMRig crypto mining on affected Confluence servers, Technical Advisory: Zero-day critical vulnerability in Log4j2 exploited in the wild, DreamBus Botnet – Technical Analysis, Threat Alert: Kinsing Malware Attacks Targeting Container Environments
Napisał: Patryk Krawaczyński
28/12/2022 w Administracja
C
zasami zachodzi potrzeba pobrania próbki złośliwego oprogramowania / phishingu ze złośliwego serwera, ale nazwa domeny nie jest już rozwiązywalna (została usunięta / zablokowana). Niestety cyberprzestępcy nie zawsze są na tyle niezdarni, że udostępniają te same artefakty na czystym adresie IP i polecenie:
curl http://212.45.19.19/redline_stealer.exe
zwraca kod 404, ponieważ serwer taki często obsługuje wiele szkodliwych witryn i reaguje na konkretną nazwę domenową. W takim przypadku posiadając historyczne dane DNS o domenie możemy połączyć się z serwerem za pomocą narzędzia curl na kilka sposobów. Najstarszą metodą, na której kiedyś opierał się system DNS jest edycja pliku hosts
(/etc/hosts
w systemach Linux i systemach uniksopodobnych). Dodając na przykład wpis:
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
25/09/2022 w Bezpieczeństwo
K
olejnym pakietem (obok base-files), który wysyła informacje o naszym serwerze do firmy Ubuntu jest pollinate. Jest to klient, który łączy się z conajmniej jednym serwerem Pollen (entropia-jako-usułga) za pośrednictwem zaszyfrowanego (HTTPS) lub nie (HTTP) protokołu i pobiera losowe ziarno. Jest to szczególnie przydatne przy pierwszym uruchomieniu obrazów w chmurze i na maszynach wirtualnych, aby zainicjować systemowy generator liczb losowych. Może być również używany na fizycznych maszynach, aby uzupełniać nastawienie pseudogeneratora liczb losowych. Sprawdźmy, co jest wysyłane do serwerów entropy.ubuntu.com, które są wpisane w standardowej konfiguracji tego programu:
sudo su - pollinate -s /bin/bash
pollinate --print-user-agent
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
24/03/2022 w CmdLineFu
curl -s https://nfsec.pl | grep -Eo "(http|https)://[a-zA-Z0-9./?=_%:-]*" | sort -u
Więcej informacji: SpiderFoot
Napisał: Patryk Krawaczyński
07/11/2020 w CmdLineFu
Usługi skracania adresów URL istnieją od dawna. Wikipedia datuje je na rok 2000. Dzięki mediom społecznościowym i komunikatorom usługi skracania adresów są teraz bardziej przydatne niż kiedykolwiek. Bazując na ułomności ludzkiej pamięci pozwalają nam zapamiętać krótkie adresy zamiast długich wierszy. Skrócona “część” działa jak unikalny klucz, który serwer może użyć do przekierowania żądania do wybranego, końcowego adresu URL. Istnieją różne metody przekierowania przeglądarki z adresu URL na inny. Większość z nich zwykle opiera się na nagłówku HTTP przy pomocy kodów 301
(Moved Permanently), 302
(Found), 307
(Temporary Redirect), czy 308
(Permanent Redirect). Niezależnie od kodu miejsce docelowe przekierowania jest zwykle zakodowane w polu nagłówka: Location
. Bazując na tej informacji możemy sprawdzić większość skróconych adresów za pomocą polecenia curl:
curl -svI $SKRÓCONY_URL --max-redirs 0 \
--user-agent "Googlebot/2.1 (+http://www.google.com)" 2>&1 | grep -i location
Jednak sam proces przekierowania to nie jedyna rzecz, która ma miejsce, gdy nasza przeglądarka trafia na serwer skracarki. Pozostawiamy również wpis w logach ze swoim odciskiem palca zawierającym adres IP, nazwę aplikacji klienckiej i wszystko to, co przeglądarka akceptuje, aby przekazać serwerowi. Te wszystkie rzeczy poszerzają możliwości skracania adresów URL i pomagają zespołom marketingu, SEO i innym “szpiegować” (pozyskiwać dość szczegółowe informacje analityczne) klientów z nich korzystających. A jeszcze gorzej, jeśli za ich pomocą przekazujemy poufne informacje.
Napisał: Patryk Krawaczyński
26/06/2020 w CmdLineFu
for i in `curl -s https://adres.pl | grep -Eo \
"(http|https)://[a-zA-Z0-9./?=_-]*\.js"`;
do curl -s $i &> /dev/stdout | grep -Eo "(http|https)://[a-zA-Z0-9./?=_-]*"*; done
Napisał: Patryk Krawaczyński
16/01/2020 w Bezpieczeństwo
W
szystko zaczęło się od jednego tweeta, który uświadomił nagle wielu osobom, że mechanizm w dystrybucji Linuksa Ubuntu za pomocą skryptów odpowiedzialnych za generowanie zawartości pliku /etc/motd
(ang. Message of the Day) pobiera informacje z serwerów firmy Ubuntu. Nic by nie było w tym dziwnego, gdyby nie fakt, że podczas tego procesu wysyła też sporo “osobistych” i możliwych do zidentyfikowania informacji z Twojej stacji roboczej lub serwera. Za każdym razem kiedy logujemy się na maszynę dowolnego Linuksa uruchamiamy logikę w “MOTD”. Jest to komunikat dnia, który może być ustawiony przez administratora w celu przekazania informacji użytkownikom lub różne skrypty w celu poinformowania administratora o roli i innych metadanych serwera:
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
10/08/2019 w Administracja, CmdLineFu, Debug
C
url może być pomocnym narzędziem przy debugowaniu. Gdy na rozpoznanie problemu składają się problemy z: siecią, DNS, serwerem lub wydajnością samej webaplikacji – możemy bez wahania po niego sięgnąć. W celu izolacji problemu możemy uruchomić curl’a w następujący sposób:
curl -w "$(date +%FT%T) dns: %{time_namelookup} connect: %{time_connect}\
firstbyte: %{time_starttransfer} total: %{time_total} HTTP: %{http_code}\n"\
-o /dev/null -s "https://apka.dev"
Polecenie takie puszczone w pętli da nam ładny podgląd na każde żądanie HTTP:
[ czytaj całość… ]
Ostatni komentarz :