Podczas tworzenia nowych aplikacji nie zawsze wszystko działa jak należy. #od0dopentestera
Czasami trzeba coś przeanalizować.
Ale co jeśli przez pomyłkę w ostatecznej wersji produktu pozostawimy opcje służące do rozwiązywania problemów?
Jeżeli używasz narzędzia Flask to wiesz, że podczas tworzenia aplikacji udostępnia on Wekzeug Debugger.
Jeżeli gdzieś kod działa nieprawidłowo to zamiast komunikatu błędu otrzymujemy interaktywny interfejs służący do dynamicznej analizy programu.
Możemy wyświetlać wartości zmiennych oraz wykonywać dowolny kod
@muskel: Dzięki :)
@zortabla_rt: I tak i nie.
Rozpatrujemy tutaj sytuacje gdy strona posiada błąd pozwalający na pobranie dowolnego pliku z serwera.
I rzeczywiście – jeżeli nie jest wykorzystywany load balancer to istnieje spora szansa, że będzie możliwe pobranie pliku z kluczem prywatnym SSL.
Ten plik można potem w odpowiednich warunkach wykorzystać do podsłuchania transmisji bądź podszycia się pod daną domenę.
I to właściwie tyle.
Gdy serwer pozwala na dostęp
Na co zwrócić uwagę podczas zawierania kontraktu z firmą oferującą testy penetracyjne? #od0dopentestera
Wojciech Dworakowski - prezes firmy SecuRing opowiada o organizacji OWASP.
Dowiesz się ile średnio trwa test penetracyjny i czy zdarza się nie znajdować błędów bezpieczeństwa.
Rozmawiamy o tym jak powinien wyglądać raport z przeprowadzonego pentestu oraz co to jest modelowanie zagrożeń.
Wojtek opowiada również jakie podatności są najczęściej ignorowane i czy udostępnianie kodu źródłowego przez firmy
Praktycznie każdy serwis internetowy posiada różne rodzaje kont użytkownika.
Ale jak sprawdzić czy uprawnienia do nich przypisane działają prawidłowo? #od0dopentestera
Można to robić ręcznie – logować się na każde konto z osobna i na każdej podstronie sprawdzać czy dostęp jest prawidłowy.
Czynność tą można również zautomatyzować przy użyciu narzędzia AutoRepeater.
Działa ono na zasadzie znajdź-zamień znanego z edytorów tekstu.
Jest to rozszerzenie do programu Burp.
Najpierw modyfikujemy ustawienia przeglądarki aby
Swego czasu na wykopie można było rozdawać więcej plusów niż teoretycznie jest to możliwe.
Jest to przykład ataku race condition – kiedy to wysyłamy do serwera dwa żądania w tym samym czasie i patrzymy jak na nie zareaguje. #od0dopentestera
Szkolnym przykładem tego problemu są kupony rabatowe/karty podarunkowe a w szczególności te, które można wykorzystać tylko raz.
Jak testować taką podatność?
W materiale prezentuję narzędzie Turbo Intruder.
Za jego pomocą można w
@villager Tak. Od krytyczności danych na przykład. Ale szukam, czy są jakieś rekomendacje bo niezależnie ile zaproponuję, ktoś będzie miał uważał, że to za często, a inny ktoś, że za rzadko.
Praktycznie każdy z nas posiada w mieszkaniu router.
Na jakie elementy powinniśmy zwrócić uwagę z punktu widzenia bezpieczeństwa? #od0dopentestera
- wyłącz opcję WPS,
- używaj WPA2 z AES z odpowiednio długim i skomplikowanym hasłem,
- wyłącz UPnP jeżeli go nie potrzebujesz,
- urządzenia IOT podłącz do odseparowanej sieci gościa,
- sprawdź otwarte porty w zakładce port forwarding,
- o ile nie zarządzasz urządzeniem zdalnie wyłącz logowanie do panelu admina
Co to jest red teaming? Czym różni się od testu penetracyjnego?
Na te i inne pytania odpowiada Marcin Ludwiszewski - szef zespołu "Cyber" w Deloitte. #od0dopentestera
Zajmuje się testami ofensywnymi, obroną przed atakami oraz definiowaniem długoterminowych planów strategicznych w obrębie cyberbezpieczeństwa.
W rozmowie opowiada o ciekawych sytuacjach ze swojej pracy i używanych narzędziach.
Poruszamy aspekty prawne oraz kwestie finansowe red teamingu.
Dowiesz się na czym polega wstępne rozpoznanie oraz jak najmniejszym
Błędy typu SQL Injection pozwalają na wykonanie nieautoryzowanych zapytań do naszej bazy danych.
Ale co jeszcze można uzyskać za ich pomocą? #od0dopentestera
MariaDB pozwala na zainstalowanie dodatkowych funkcji, tak zwany User-Defined Functions.
Nas interesuje taka, która umożliwia wykonanie kodu na serwerze poprzez zapytanie SQL.
Najpierw sprawdzamy wersje systemu operacyjnego oraz lokalizacje katalogu z rozszerzeniami:

SHOW GLOBAL VARIABLES LIKE '%version%';
SHOW VARIABLES LIKE 'plugin_dir';

Teraz tworzymy nową tabele i kopiujemy do niej
Używasz komunikatora Signal ale nie wiesz co to kod zabezpieczenia?
Dostałeś kiedyś komunikat o zmianie numeru bezpieczeństwa i nie wiesz o co chodzi?
Aby nasza komunikacja była prywatna musi być zaszyfrowana.
W dużym skrócie potrzebujemy do tego klucza publicznego i prywatnego.
Problem w tym, że każdy z nas może w dowolnej chwili wygenerować nowy, unikalny klucz.
Jak zatem powiązać osobę po drugiej stronie z jej kluczem aby mieć pewność, że rozmawiamy z
Jeżeli jesteś #programista15k i używasz #aws to wiesz jak wiele usług jest tam dostępnych. #od0dopentestera
Gdy serwer EC2 musi mieć dostęp do S3 - gdzieś należy przechowywać klucze API.
Zamiast wpisywać je na sztywno do kodu aplikacji - stosuje się EC2 Instance Metadata Service.
Problem pojawia się, gdy użytkownik może podać adres domeny, z której pobieramy i wyświetlamy treść.
W taki sposób może pobrać dane z Metadata Service.
Taki atak
Jak wygląda praca osoby zajmującej się bezpieczeństwem w banku? #od0dopentestera
Adam Lange pracuje jako VP Head of Cyber Threat Hunting w Standard Chartered Bank.
W wywiadzie opowiada na czym polega threat hunting i co jest najtrudniejsze w tej pracy.
Posłuchasz o metodach działania przestępców oraz dlaczego pakiet Office tak często używany jest do ataków na firmy.
Adam tłumaczy co to jest phishing i gdzie możemy zgłosić złośliwą witrynę.
Rozmawiamy także
Kilka lat temu The Guardian zapytał osoby profesjonalnie zajmujące się bezpieczeństwem, jakich rad udzielają swoim dzieciom aby uchronić je, przed zagrożeniami znajdującymi się w Internecie.
Czy te odpowiedzi dalej są aktualne? #od0dopentestera
1. Jeżeli nie zrobił byś czegoś twarzą w twarz – nie rób tego w Internecie.
Tryb prywatny w przeglądarce nie zapewnia anonimowości.
Wiadomości na zaszyfrowanych komunikatorach są tajne – chyba, że ktoś przekaże je policji.
Cyberprzemoc to wyśmiewanie z wykorzystaniem
@KacperSzurek:

Zablokowałeś Facebooka? A czy nie zapomniałeś o narzędziach Google?

Google Docs bowiem może zostać wykorzystany jako interaktywny czat.


Co to jest za rada w ogóle xD Blokowanie mediów społecznościowych i narzędzi? Może zablokujcie od razu internet xD Aż mnie trzęsie od takich głupot.

To samo PEGI. Te rady są dla dzieci czy rodziców? Bo we wpisie jest o dzieciach, a dwa ostatnie punkty są skierowane do rodziców. Jeśli do dzieci,
Większość z nas korzysta z Google, Gmaila czy też Chrome'a.
Od bezpieczeństwa tych narzędzi zależy bezpieczeństwo naszych danych. #od0dopentestera
Krzysztof Kotowicz to osoba, która o możliwościach ataków na serwisy internetowe wie wiele - pracuje jako Senior Software Engineer w Google.
W wywiadzie opowiada co to jest XSS i jak przekonać biznes do zainteresowania się tematami związanymi z zabezpieczeniem stron.
Dowiesz się jak działa Trusted Types a także jak wygląda praca podczas
W pracy #od0dopentestera potrzebujemy narzędzia, które rejestruje i ponownie wykonuje żądania http.
Jednym z nich jest Repeater z pakietu Burp.
Teoretycznie to prosty mechanizm. Po lewej treść żądania a po prawej odpowiedź serwera.
Ale istnieje trochę opcji, których mogłeś nie znać.

1. Żądania przechowywane są w ponumerowanych zakładkach.
Można zmienić ich nazwę klikając na daną zakładkę dwa razy.
2. W rogu zakładki, znajduje się przycisk „X” zamykający naszą pracę.
W najnowszej wersji
Burp Suite to jedno z głównych narzędzi #od0dopentestera
Działa ono jak serwer proxy – czyli wszystko co wysyłamy i odbieramy w przeglądarce jest zapisywane również tam.
Takie dane można następnie filtrować i wybierać interesujące nas żądania.
One to mogą być przesłane do modułu repeater.
Tam można je dowolnie modyfikować – czyli dodawać lub usuwać parametry, nagłówki i ciasteczka.
Większość pracy pentestera to umiejętne manipulowanie wszystkimi parametrami i obserwowanie odpowiedzi serwera.
Sporo z
Masz pytanie na temat security?


@KacperSzurek: Jasne.
Security to very szeroki topic, w którym każdemu beginnersowi pojawia się dużo questionsów i zanswerowanie ich w social mediach jest bardzo well widziane przez community, bo może zaimpovementować knowledge i zgainować trochę nowych skillsów przydatnych w usual taskach albo większych czelenżach uzgadnianych na meetingach z coworkerami przy aprobacie managementu.
@MrFisherman:

w branży IT dominuje jezyk angielski czy tego chcesz czy nie i łatwiej powiedzieć security albo np spring security niż bezpieczeńtwo danych.


To prawda, dominuje.
Jednak specjaliści IT dzielą się na:
1) tych, którzy anglicyzmów używają umiejętnie i
2) tych, którzy anglicyzmów używają bezmyślnie kalecząc składnię języka polskiego.

Ja bardzo szanuję tych pierwszych. Ci drudzy często wykazują się ignorancją, bezmyślnością, lenistwem, a swoje inwalidztwo językowe próbują nieporadnie przykrywać poprzez głoszenie
OWASP Top 10 – czyli co każdy programista o bezpieczeństwie wiedzieć powinien #od0dopentestera
Niedostateczne logowanie i monitorowanie to ostatni z punktów na liście.
Ale jak to? Przecież brak logowania to nie jest błąd sam w sobie.
Przecież jeżeli nic nie logujemy, to też nic nie może zostać wykradzione.
A co w przypadku gdy ktoś włamie się do naszej aplikacji?
Jeżeli nie posiadamy logów, to nawet jeżeli wykryjemy włamanie, dalej nie wiemy kiedy
Jeżeli pracujesz w firmie programistycznej to w którymś momencie tworzenia nowej aplikacji należy sprawdzić jej bezpieczeństwo. #od0dopentestera
Gdy brak wewnętrznego zespołu zajmującego się tym tematem, zatrudnia się zewnętrzny podmiot do przeprowadzenia testu penetracyjnego.
Umowa zawiera ramy czasowe oraz zakres pentestu – czyli to co będzie testowane.
Uogólniając: płacimy za spędzony czas a nie za znalezione błędy.
Innym podejściem do tematu jest Bug Bounty.

Tutaj wyrażamy zgodę na testowanie naszej aplikacji szerszej grupie
Masz pytanie na temat security? Zadaj je na grupie


@KacperSzurek: Jasne.
Security to very szeroki topic, w którym każdemu beginnersowi pojawia się dużo questionsów i zanswerowanie ich w social mediach jest bardzo well widziane przez community, bo może zaimpovementować knowledge i zgainować trochę nowych skillsów przydatnych w usual taskach albo większych czelenżach uzgadnianych na meetingach z coworkerami przy aprobacie managementu.
Na jakie metody oszustw można natknąć się przeglądając oferty na popularnych portalach ogłoszeniowych?
Kim jest słup oraz jak można nim zostać? #od0dopentestera

Otrzymałeś email o domniemanym spadku po królu w Nigerii.
Aby go odebrać wystarczy tylko uiścić drobną opłatę manipulacyjną.
Te wiadomości specjalnie wyglądają tak źle.
Jeżeli potencjalna ofiara uwierzy w tak nierealistyczne wizje już na samym początku, istnieje spora szansa, że da się ją przekonać jeszcze do innych rzeczy.

Ktoś
Poszukiwanie błędów typu DOM Based XSS polega na odnajdywaniu takich miejsc w skrypcie strony, które pobierają dane od użytkownika, a następnie przekazują je do potencjalnie niebezpiecznych miejsc w stylu innerHTML bez odpowiedniej weryfikacji. #od0dopentestera
Jednym z obecnie stosowanych rozwiązań, jest zamiana problematycznych funkcji na ich bezpieczniejsze odpowiedniki.
I tak zamiast innerHTML można użyć innerText.
Problem w tym, że taka zmiana nie zawsze jest możliwa.

Postanowiono zatem monitorować potencjalnie niebezpieczne miejsca.
Zmieniono
Jak rozpocząć przygodę z programami Bug Bounty? #od0dopentestera
1. Znajdź firmę, która pozwala na poszukiwanie błędów. Możesz skorzystać z agregatorów lub użyć Google
2. Sprawdź zakres (scope). Dzięki temu dowiesz się jakie domeny można testować.
3. Gwiazdka użyta w nazwie domeny oznacza, że firma pozwala na atakowanie wszystkich subdomen, które odnajdziesz.
Tutaj przydatny jest certificate transparency log gdzie zapisane są wszystkie prawidłowo wygenerowane certyfikaty SSL.
To pozwala na poznanie subdomen używanych
Certyfikat SSL sprawia, że ruch pomiędzy naszą przeglądarką a serwerem jest szyfrowany – czyli nasz operator internetowy nie wie, co przesyłamy.
Ale co w przypadku, gdy ten certyfikat wygasł i nie jest ważny?
Czy możemy bezpiecznie zaakceptować wyjątek bezpieczeństwa? #od0dopentestera

Aby połączenie było szyfrowane każdy serwer musi posiadać swój unikalny klucz.
Ten klucz musi być jakoś powiązany z nazwą domeny.
Tylko, że każdy może wygenerować swój klucz i stwierdzić, że należy on
@KacperSzurek: wiem, że to materiał "popularnonaukowy" ale mówisz, że tylko serwer docelowy może odczytać, to co do niego wysyłamy. A nie jest to do końca prawdą, bo to, co wysyłamy może odczytać każdy, kto posiada klucz prywatny, a często w internecie właściciel serwera intencjonalnie dzieli się swoim kluczem prywatnym z innymi podmiotami, i te podmioty także mogą (i robią to) odczytać ruch.
@Texit: Tworze materiały różnej długości. Chociażby seria od 0 do pentestera, gdzie filmy trwają około 6 minut.
Niestety, nie wszystko da się wytłumaczyć w takim czasie.
Niektóre treści tworzone są jako podcast – stąd ich nieco dłuższa forma.
Jeżeli dla kogoś to za długo zawsze może przeczytać transkrypcję do wideo bądź też przeskoczyć do interesującego wątku przy użyciu sygnatur czasowych w opisach pod filmem.
Mocno skrócone wersje publikuje również na
Każde pole w tabeli MySQL ma określony typ.
Dla varchar możemy zdefiniować maksymalną długość przechowywanego tekstu.
Ale co w przypadku, gdy użytkownik prześle dłuższy ciąg? #od0dopentestera

W przypadku konstrukcji INSERT dane zostaną automatycznie przycięte do maksymalnej długości danego pola.
To nic odkrywczego, ale mało kto wie, że standardowo baza ignoruje spacje na końcu wyrazu:

SELECT * FROM users WHERE login = "admin "

Dostaniemy takie same wyniki jak dla zapytania bez białych
WordPress to najpopularniejszy system blogowy w Internecie.
Średnio już co 3 strona korzysta właśnie z niego.
Jednak przez te lata wokół tego narzędzia narosło wiele mitów.
Czy #wordpress jest bezpieczny?
O tym w dzisiejszym #od0dopentestera

Spróbujmy prześledzić liczbę podatności.
Wykorzystamy do tego celu stronę WPScan Vulnerability Database.
Ostatni znany błąd w samym silniku pochodzi z marca 2019 roku.
Jest oznaczony jako atak XSS przy użyciu komentarza.
Tylko, że aby go wykorzystać,
W serii #od0dopentestera opowiadam głównie o atakach na strony internetowe.
Ale przecież większość firm posiada swoje fizyczne biura.
Nic zatem nie stoi na przeszkodzie aby potencjalny atakujący spróbował dostać się do biurowca i zaatakować firmę właśnie tam.
Jak może wyglądać takie kontrolowanie włamanie?

Pierwsza przeszkoda to bramki kontroli dostępu.
Jak je obejść? Spróbuj skłamać, że jesteś umówiony na rozmowę kwalifikacyjną.
Możesz również przyjść o kulach albo na wózku inwalidzkim.
Podszywanie się pod
@KacperSzurek: kilka lat temu robiłem projekt w banku. Raczej standardowe zabezpieczenia, karta dostępu, kontrola czy nie wnosisz/wynosisz jakiegoś komputera (trzeba było mieć wtedy papier).
Aż projekt się skończył i została mi powierzona funkcja wyniesienia naszego sprzętu (kilka komputerów). Więc wziąłem platformę, zapakowałem na nią komputery i wyjechałem z biurowca. Dwa razy z pełną platformą. Bez jakiejkolwiek kontroli. Strażnik mi jeszcze bramkę przytrzymał.
Jakiś czas temu tłumaczyłem błąd CSRF, który może prowadzić do nieświadomego wykonania akcji przez zalogowanego użytkownika.
Wtedy jako rozwiązanie podałem używanie dodatkowego pola z losową wartością.
Ale czy ruch twórców przeglądarki Google Chrome może doprowadzić do końca tego rodzaju podatności?

Planowane jest bowiem ustawienie flagi SameSite=Lax dla wszystkich ciasteczek.
W wersji Strict przeglądarka nie dołączy ciasteczka do żądania, które pochodzi z innej domeny.
Jeżeli więc złośliwy formularz znajduje się na innej domenie