Najciekawsze podatności znalezione przez nasz zespół w trakcie testowania bezpieczeństwa aplikacji Android – przede
wszystkim bankowości czy płatności mobilnych.
Urządzenia przenośne w tym w szczególności telefony komórkowe coraz częściej zastępują komputer w roli klienta aplikacji. Jednym z nowych trendów jest przenoszenie różnego rodzaju aplikacji internetowych (np. bankowości internetowej) na platformy mobilne. W swojej prezentacji chciałbym omówić problemy dotyczące bezpieczeństwa informacji jakie należy rozpatrzyć wdrażając usługi mobilne. Dla skoncentrowania uwagi analiza problemu będzie dotyczyć bankowości mobilnej dostępnej za pośrednictwem telefonu komórkowego.
- Czym pod względem bezpieczeństwa różni się terminal przenośny (np. telefon komórkowy) od komputera?
- Rodzaje aplikacji mobilnych – przeglądarka vs „gruby klient”.
- Jak obecnie jest implementowana bankowość mobilna?
- Wykorzystanie telefonów komórkowych do autoryzacji transakcji w bankowości internetowej (kody jednorazowe, tokeny challenge-response).
- Ograniczenia środowiska mobilnego – wpływ na bezpieczeństwo.
- Typowe podatności dla aplikacji internetowych – czy są one aktualne dla aplikacji mobilnych? Przegląd według listy OWASP Top 10.
- Ryzyka, które zyskują na znaczeniu (np. zgubienie, kradzież, obserwacja, podsłuch)
Najciekawsze podatności znalezione przez nasz zespół w trakcie testowania bezpieczeństwa aplikacji mobilnych – przede wszystkim finansowych (bankowość, płatności).
Bankowość i płatności mobilne - Jak zrobić to bezpiecznie?SecuRing
Urządzenia przenośne (smartfony, tablety) coraz częściej zastępują komputer w roli klienta aplikacji. Ponadto ich zastosowanie umożliwia wdrożenie nowych, niestosowanych dotąd funkcji zmieniających sposób korzystania przez klienta z usług finansowych czy płatności. W swojej prezentacji chciałbym omówić problemy dotyczące bezpieczeństwa informacji jakie należy rozpatrzyć wdrażając usługi mobilne. W szczególności chciałbym się skupić na defektach w oprogramowaniu, które mogą przyczynić się do wzrostu ryzyka stosowania technologii mobilnych.
Omawiane problemy:
- Profil ryzyka: Czym pod względem bezpieczeństwa różni się aplikacja mobilna od aplikacji przeglądarkowej?
- Ograniczenia środowiska mobilnego – wpływ na bezpieczeństwo.
- Typowe podatności dla aplikacji internetowych – czy są one aktualne dla aplikacji mobilnych?
- Ryzyka i podatności specyficzne dla aplikacji mobilnych – Przykłady.
- Dane przechowywane na urządzeniu.
- Autoryzacja transakcji.
- Wrogie oprogramowanie (malware).
- Bezpieczna aplikacja mobilna – Jak to osiągnąć?
- Wymagania (również niefunkcjonalne) odnośnie bezpieczeństwa – Przykłady dla bankowości mobilnej
- Ocena projektu
- Testy bezpieczeństwa
Prezentacja z konferencji Mobilization 2014.
Abstrakt:
Na rzeczywistych przykładach pokażę jak wygląda proces oceny bezpieczeństwa aplikacji mobilnych. Zobaczymy m.in. jak wykrywać słabości związane z przechowywaniem danych na urządzeniu, nieprawidłowości w transmisji, oraz najgroźniejsze - błędy w API po stronie serwera (np. błędy logiczne, kontroli dostępu, REST). Jednocześnie okaże się jakie techniki utrudniają ataki, jaki jest faktyczny wpływ na ryzyko poszczególnych podatności, oraz jakie zabezpieczenia warto zastosować w różnych aplikacjach.
Testowanie bezpieczeństwa – jak dostosować zakres do realnych zagrożeń i budżetuSecuRing
Jednym z problemów przed którym staje manager bezpieczeństwa lub kierownik projektu, który chce sprawdzić bezpieczeństwo systemu informatycznego to właściwy dobór zakresu testów bezpieczeństwa. Z jednej strony test zbyt ogólny może nie wykryć wielu istotnych słabości, z drugiej strony – dogłębne testy i analizy bezpieczeństwa nie mają ekonomicznego uzasadnienia dla każdego systemu i aplikacji eksploatowanej w firmie. Czas specjalistów, zarówno zewnętrznych jak i wewnętrznych, kosztuje i jest ograniczony, natomiast czas potencjalnych intruzów – nie. Tym bardziej istotne jest optymalne wykorzystanie czasu i budżetu przeznaczonego na testy bezpieczeństwa.
Celem prezentacji jest zachęcenie do dyskusji nad tym jak właściwie dobrać zakres testów bezpieczeństwa.
Prezentacja z konferencji SEMAFOR 2013, 5-6 marca 2013
Nawet w aplikacjach o wysokim profilu ryzyka, przy rygorystycznych procedurach tworzenia kodu oraz wyczerpujących testach, zdarzają się krytyczne błędy bezpieczeństwa. W prezentacji pokazane zostaną rzeczywiste przykłady takich błędów (znalezione w trakcie testów bezpieczeństwa bankowości elektronicznej), sposoby ich wykorzystania przez intruza, a także przyczyny ich występowania i sposoby unikania.
Większość banków stosuje w swoich systemach bankowości internetowej i mobilnej metody autoryzacji transakcji (np. hasła SMS, "podpis elektroniczny", tokeny OTP, tokeny challenge-response). Stosowanie tego typu metod nie jest ograniczone tylko do systemów finansowych, są np. szeroko stosowane do autoryzowania operacji odzyskiwania hasła w różnego rodzaju aplikacjach.
Autoryzacja transakcji ma ograniczać skutki wynikające z działania wrogiego oprogramowania na stacji użytkownika, przechwytywania sesji oraz zgadywania czy kradzieży haseł.
W ostatnich latach widzimy jednak, że strategie działania grup przestępczych dostosowują się do tych zabezpieczeń i niejednokrotnie skutecznie je omijają. Prezentacja ma na celu skonfrontowanie obecnych metod autoryzacji operacji ze współczesnymi scenariuszami ataku przy użyciu malware oraz wskazanie typowych błędów w implementacji, które mogą przyczynić się do możliwości obejścia tych zabezpieczeń.
Agenda (draft):
- Krótka prezentacja metod autoryzacji transakcji.
- Kilka "case study" - jak malware obchodzi autoryzacje transakcji (w tym własne doświadczenia zdobyte podczas analizy przypadków ataków w bankach).
- Jak wybrać skuteczną metodę autoryzacji transakcji?
- Na co uważać? Typowe błędy implementacji, które mogą przyczynić się do osłabienia mechanizmu autoryzacji transakcji.
Testowanie bezpieczeństwa aplikacji dedykowanych na platformę AndroidSecuRing
Celem prezentacji jest zapoznanie słuchaczy z metodami badania bezpieczeństwa aplikacji przeznaczonych na Androida. Zaprezentowane zostaną faktyczne przykłady podatności znalezionych w trakcie testów penetracyjnych. Dodatkowo, omówione będą podstawowe narzędzia oraz techniki niezbędne do przeprowadzanych testów bezpieczeństwa.
Urządzenia przenośne w tym w szczególności telefony komórkowe coraz częściej zastępują komputer w roli klienta aplikacji. Jednym z nowych trendów jest przenoszenie różnego rodzaju aplikacji internetowych (np. bankowości internetowej) na platformy mobilne. W swojej prezentacji chciałbym omówić problemy dotyczące bezpieczeństwa informacji jakie należy rozpatrzyć wdrażając usługi mobilne. Dla skoncentrowania uwagi analiza problemu będzie dotyczyć bankowości mobilnej dostępnej za pośrednictwem telefonu komórkowego.
- Czym pod względem bezpieczeństwa różni się terminal przenośny (np. telefon komórkowy) od komputera?
- Rodzaje aplikacji mobilnych – przeglądarka vs „gruby klient”.
- Jak obecnie jest implementowana bankowość mobilna?
- Wykorzystanie telefonów komórkowych do autoryzacji transakcji w bankowości internetowej (kody jednorazowe, tokeny challenge-response).
- Ograniczenia środowiska mobilnego – wpływ na bezpieczeństwo.
- Typowe podatności dla aplikacji internetowych – czy są one aktualne dla aplikacji mobilnych? Przegląd według listy OWASP Top 10.
- Ryzyka, które zyskują na znaczeniu (np. zgubienie, kradzież, obserwacja, podsłuch)
Najciekawsze podatności znalezione przez nasz zespół w trakcie testowania bezpieczeństwa aplikacji mobilnych – przede wszystkim finansowych (bankowość, płatności).
Bankowość i płatności mobilne - Jak zrobić to bezpiecznie?SecuRing
Urządzenia przenośne (smartfony, tablety) coraz częściej zastępują komputer w roli klienta aplikacji. Ponadto ich zastosowanie umożliwia wdrożenie nowych, niestosowanych dotąd funkcji zmieniających sposób korzystania przez klienta z usług finansowych czy płatności. W swojej prezentacji chciałbym omówić problemy dotyczące bezpieczeństwa informacji jakie należy rozpatrzyć wdrażając usługi mobilne. W szczególności chciałbym się skupić na defektach w oprogramowaniu, które mogą przyczynić się do wzrostu ryzyka stosowania technologii mobilnych.
Omawiane problemy:
- Profil ryzyka: Czym pod względem bezpieczeństwa różni się aplikacja mobilna od aplikacji przeglądarkowej?
- Ograniczenia środowiska mobilnego – wpływ na bezpieczeństwo.
- Typowe podatności dla aplikacji internetowych – czy są one aktualne dla aplikacji mobilnych?
- Ryzyka i podatności specyficzne dla aplikacji mobilnych – Przykłady.
- Dane przechowywane na urządzeniu.
- Autoryzacja transakcji.
- Wrogie oprogramowanie (malware).
- Bezpieczna aplikacja mobilna – Jak to osiągnąć?
- Wymagania (również niefunkcjonalne) odnośnie bezpieczeństwa – Przykłady dla bankowości mobilnej
- Ocena projektu
- Testy bezpieczeństwa
Prezentacja z konferencji Mobilization 2014.
Abstrakt:
Na rzeczywistych przykładach pokażę jak wygląda proces oceny bezpieczeństwa aplikacji mobilnych. Zobaczymy m.in. jak wykrywać słabości związane z przechowywaniem danych na urządzeniu, nieprawidłowości w transmisji, oraz najgroźniejsze - błędy w API po stronie serwera (np. błędy logiczne, kontroli dostępu, REST). Jednocześnie okaże się jakie techniki utrudniają ataki, jaki jest faktyczny wpływ na ryzyko poszczególnych podatności, oraz jakie zabezpieczenia warto zastosować w różnych aplikacjach.
Testowanie bezpieczeństwa – jak dostosować zakres do realnych zagrożeń i budżetuSecuRing
Jednym z problemów przed którym staje manager bezpieczeństwa lub kierownik projektu, który chce sprawdzić bezpieczeństwo systemu informatycznego to właściwy dobór zakresu testów bezpieczeństwa. Z jednej strony test zbyt ogólny może nie wykryć wielu istotnych słabości, z drugiej strony – dogłębne testy i analizy bezpieczeństwa nie mają ekonomicznego uzasadnienia dla każdego systemu i aplikacji eksploatowanej w firmie. Czas specjalistów, zarówno zewnętrznych jak i wewnętrznych, kosztuje i jest ograniczony, natomiast czas potencjalnych intruzów – nie. Tym bardziej istotne jest optymalne wykorzystanie czasu i budżetu przeznaczonego na testy bezpieczeństwa.
Celem prezentacji jest zachęcenie do dyskusji nad tym jak właściwie dobrać zakres testów bezpieczeństwa.
Prezentacja z konferencji SEMAFOR 2013, 5-6 marca 2013
Nawet w aplikacjach o wysokim profilu ryzyka, przy rygorystycznych procedurach tworzenia kodu oraz wyczerpujących testach, zdarzają się krytyczne błędy bezpieczeństwa. W prezentacji pokazane zostaną rzeczywiste przykłady takich błędów (znalezione w trakcie testów bezpieczeństwa bankowości elektronicznej), sposoby ich wykorzystania przez intruza, a także przyczyny ich występowania i sposoby unikania.
Większość banków stosuje w swoich systemach bankowości internetowej i mobilnej metody autoryzacji transakcji (np. hasła SMS, "podpis elektroniczny", tokeny OTP, tokeny challenge-response). Stosowanie tego typu metod nie jest ograniczone tylko do systemów finansowych, są np. szeroko stosowane do autoryzowania operacji odzyskiwania hasła w różnego rodzaju aplikacjach.
Autoryzacja transakcji ma ograniczać skutki wynikające z działania wrogiego oprogramowania na stacji użytkownika, przechwytywania sesji oraz zgadywania czy kradzieży haseł.
W ostatnich latach widzimy jednak, że strategie działania grup przestępczych dostosowują się do tych zabezpieczeń i niejednokrotnie skutecznie je omijają. Prezentacja ma na celu skonfrontowanie obecnych metod autoryzacji operacji ze współczesnymi scenariuszami ataku przy użyciu malware oraz wskazanie typowych błędów w implementacji, które mogą przyczynić się do możliwości obejścia tych zabezpieczeń.
Agenda (draft):
- Krótka prezentacja metod autoryzacji transakcji.
- Kilka "case study" - jak malware obchodzi autoryzacje transakcji (w tym własne doświadczenia zdobyte podczas analizy przypadków ataków w bankach).
- Jak wybrać skuteczną metodę autoryzacji transakcji?
- Na co uważać? Typowe błędy implementacji, które mogą przyczynić się do osłabienia mechanizmu autoryzacji transakcji.
Testowanie bezpieczeństwa aplikacji dedykowanych na platformę AndroidSecuRing
Celem prezentacji jest zapoznanie słuchaczy z metodami badania bezpieczeństwa aplikacji przeznaczonych na Androida. Zaprezentowane zostaną faktyczne przykłady podatności znalezionych w trakcie testów penetracyjnych. Dodatkowo, omówione będą podstawowe narzędzia oraz techniki niezbędne do przeprowadzanych testów bezpieczeństwa.
Wykład z konferencji 4Developers 2015.
OWASP - Open Web Applications Security Project to fundacja non-profit której celem jest eliminacja problemów bezpieczeństwa aplikacji.
W trakcie wykładu przedstawie krótko OWASP Top 10 w wydaniu dla programistów, czyli "Top 10 Proactive Controls" a więc najważniejsze zalecenia pozwalające na uniknięcie kluczowych błędów bezpieczeństwa.
OWASP Mobile TOP 10 na przykładzie aplikacji bankowych - Semafor 2016 - Mateu...Logicaltrust pl
Wnioski z technicznego badania kilkudziesięciu polskich aplikacji bankowych przeznaczonych na platformy Android oraz iOS pod kątem występowania w nich podatności z OWASP Mobile TOP 10. Prezentacja rzeczywistych błędów w oprogramowaniu mobilnym, praktycznych porad jak zabezpieczyć aplikacje oraz odniesienie uzyskanych rezultatów do badań przeprowadzonych w innych krajach.
Co z bezpieczeństwem aplikacji mobilnych? - studium przypadków (KrakWhiteHat ...Logicaltrust pl
Na podstawie ponad stu testów aplikacji mobilnych przedstawienie tego co robimy źle, a co jeszcze gorzej. Skupiając się głównie na platformach iOS oraz Android, przeanalizujemy garść typowych i nietypowych błędów. Przestudiujemy problemy, które można napotkać podczas testów bezpieczeństwa oraz pokażemy jak zaradny pentester może sobie z nimi poradzić, dobry programista unikać, a świadomy użytkownik zdawać sobie sprawę, że nosi dziurawy software w kieszeniach.
Narzędzia do zautomatyzowanego testowania bezpieczeństwa aplikacji WWWLogicaltrust pl
Konferencja TestFest - 20.02.2016 - Wrocław
Prezentacja ma za zadanie przedstawić zestaw narzędzi ułatwiających zautomatyzowane testy bezpieczeństwa aplikacji webowych. Dodatkowo zostaną omówione wady i zalety każdego z rozwiązań.
Wyciek danych w aplikacjach - Artur Kalinowski, 4DevelopersLogicaltrust pl
Prezentacja zagadnienia wycieku danych oraz możliwości pozyskania i późniejszego wykorzystania podczas ataków. Omówienie typowych błędów popełnianych podczas projektowania, kodowania oraz wdrażania aplikacji, które mają negatywne konsekwencje dla bezpieczeństwa aplikacji. Prezentacja prostych metod identyfikacji wycieków danych i pozyskiwania istotnych informacji z wykorzystaniem publicznie dostępnych i darmowych narzędzi, które każdy może przetestować w praktyce. Prezentowane metody i techniki nie wymagają dogłębnej wiedzy i nie są skomplikowane, co ułatwia ich zapamiętanie, jak również późniejsze wykorzystanie podczas testów bezpieczeństwa własnych aplikacji, zwłaszcza w momencie wdrażania ich w środowisku produkcyjnym. Opisy wycieków danych bazują na rzeczywistych sytuacjach, jakie spotykane są podczas przeprowadzania testów penetracyjnych, a więc obejmują błędy i niedociągnięcia, które są powszechnie spotykane, a które stanowią potencjalną furtkę dla atakującego.
W skład poruszanych zagadnień wchodzą m.in.:
1. Błędne założenia projektowe podstawą przyszłych kłopotów
2. Typowe błędy, które niosą poważne konsekwencje
2. Na co zwraca uwagę atakujący 3. Darmowe narzędzia ułatwiające pozyskanie pożądanych informacji
4. Analiza działania aplikacji
5. Pozostałości developerskie, środowiska testowe oraz niewłaściwa konfiguracja środowisk produkcyjnych 6. "Bez
komentarza" :)
7. Pozyskiwanie wrażliwych danych z pamięci operacyjnej
8. Czy stosowanie restrykcyjnych zabezpieczeń ułatwia ataki? 9. Aplikacje mobilne a bezpieczeństwo
Wykład ukierunkowany pod kątem przekazania praktycznej wiedzy, projektantom, developerom i administratorom oraz wskazania konsekwencji braku właściwego podejścia do polityki bezpieczeństwa.
prezentacja na jubileuszowej konferencji POLCAAT2019 (IIA) na temat błędów poznawczych, różnicy pomiędzy postrezganiem triady i praktyk bezpieczeństwa informacji przez "bezpiecznikow" i regularnych użytkownikow sieci.
PLNOG14: Darmowe narzędzia wspomagające proces zabezpieczania Twojej firmy - ...PROIDEA
Borys Łącki - LogicalTrust
Language: Polish
Systematyczne dbanie o bezpieczeństwo systemów i sieci to skomplikowany oraz kosztowny proces. Prelegent w oparciu o wieloletnie praktyczne doświadczenie w zakresie zabezpieczenia zasobów IT firm, przedstawi najpopularniejsze narzędzia wspomagające zarządzanie bezpieczeństwem infrastruktury IT w firmach. Dzięki praktycznemu podsumowaniu wad i zalet poszczególnych otwartych rozwiązań, uczestnik prezentacji będzie mógł trafniej podjąć decyzje dotyczące wyboru konkretnego oprogramowania.
Zarejestruj się na kolejną edycję PLNOG już dzisiaj: krakow.plnog.pl
JDD 2017: Bezpieczny wypoczynek - czyli uwierzytelnianie RESTa (Krzysztof Be...PROIDEA
Aplikacje REST-owe są obecnie niezwykle popularne: tak te w pełni RESTful jak i te udostępniające mniej lub bardziej udane REST API. Nie znaczy to jednak, że mamy świetnie rozpoznane i doskonale opanowane mechanizmy uwierzytelniania w takich aplikacjach. Przeciwnie: wiele popularnych podejść niesie za sobą duże ryzyko i liczne problemy. Podczas prelekcji postaram się przybliżyć wady i zalety najważniejszych metod i odpowiedzieć na fundamentalne pytania: czy można zrealizować bezpieczne uwierzytelnianie bezstanowej aplikacji RESTowej w sposób równie bezstanowy? Czy JWT jest magicznym narzędziem rozwiązującym wszystkie problemy? Czy, jak i kiedy stosować OAuth i OpenID Connect?
Czy aby na pewno jest Pan człowiekiem. Użyteczność kodów CAPTCHA 2.Symetria
Prezentacja stanowi drugą część i uzupełnienie wcześniejszej prezentacji agencji e-biznes Symetria na temat kodów CAPTCHA.
W drugiej części tej prezentacji skupiono się na badaniu użyteczności kodów CAPTCHA za pomocą eye trackingu.
Badanie to jest prekursorskim badaniem kodów weryfikacyjnych na polskim rynku.
Wykład z konferencji 4Developers 2015.
OWASP - Open Web Applications Security Project to fundacja non-profit której celem jest eliminacja problemów bezpieczeństwa aplikacji.
W trakcie wykładu przedstawie krótko OWASP Top 10 w wydaniu dla programistów, czyli "Top 10 Proactive Controls" a więc najważniejsze zalecenia pozwalające na uniknięcie kluczowych błędów bezpieczeństwa.
OWASP Mobile TOP 10 na przykładzie aplikacji bankowych - Semafor 2016 - Mateu...Logicaltrust pl
Wnioski z technicznego badania kilkudziesięciu polskich aplikacji bankowych przeznaczonych na platformy Android oraz iOS pod kątem występowania w nich podatności z OWASP Mobile TOP 10. Prezentacja rzeczywistych błędów w oprogramowaniu mobilnym, praktycznych porad jak zabezpieczyć aplikacje oraz odniesienie uzyskanych rezultatów do badań przeprowadzonych w innych krajach.
Co z bezpieczeństwem aplikacji mobilnych? - studium przypadków (KrakWhiteHat ...Logicaltrust pl
Na podstawie ponad stu testów aplikacji mobilnych przedstawienie tego co robimy źle, a co jeszcze gorzej. Skupiając się głównie na platformach iOS oraz Android, przeanalizujemy garść typowych i nietypowych błędów. Przestudiujemy problemy, które można napotkać podczas testów bezpieczeństwa oraz pokażemy jak zaradny pentester może sobie z nimi poradzić, dobry programista unikać, a świadomy użytkownik zdawać sobie sprawę, że nosi dziurawy software w kieszeniach.
Narzędzia do zautomatyzowanego testowania bezpieczeństwa aplikacji WWWLogicaltrust pl
Konferencja TestFest - 20.02.2016 - Wrocław
Prezentacja ma za zadanie przedstawić zestaw narzędzi ułatwiających zautomatyzowane testy bezpieczeństwa aplikacji webowych. Dodatkowo zostaną omówione wady i zalety każdego z rozwiązań.
Wyciek danych w aplikacjach - Artur Kalinowski, 4DevelopersLogicaltrust pl
Prezentacja zagadnienia wycieku danych oraz możliwości pozyskania i późniejszego wykorzystania podczas ataków. Omówienie typowych błędów popełnianych podczas projektowania, kodowania oraz wdrażania aplikacji, które mają negatywne konsekwencje dla bezpieczeństwa aplikacji. Prezentacja prostych metod identyfikacji wycieków danych i pozyskiwania istotnych informacji z wykorzystaniem publicznie dostępnych i darmowych narzędzi, które każdy może przetestować w praktyce. Prezentowane metody i techniki nie wymagają dogłębnej wiedzy i nie są skomplikowane, co ułatwia ich zapamiętanie, jak również późniejsze wykorzystanie podczas testów bezpieczeństwa własnych aplikacji, zwłaszcza w momencie wdrażania ich w środowisku produkcyjnym. Opisy wycieków danych bazują na rzeczywistych sytuacjach, jakie spotykane są podczas przeprowadzania testów penetracyjnych, a więc obejmują błędy i niedociągnięcia, które są powszechnie spotykane, a które stanowią potencjalną furtkę dla atakującego.
W skład poruszanych zagadnień wchodzą m.in.:
1. Błędne założenia projektowe podstawą przyszłych kłopotów
2. Typowe błędy, które niosą poważne konsekwencje
2. Na co zwraca uwagę atakujący 3. Darmowe narzędzia ułatwiające pozyskanie pożądanych informacji
4. Analiza działania aplikacji
5. Pozostałości developerskie, środowiska testowe oraz niewłaściwa konfiguracja środowisk produkcyjnych 6. "Bez
komentarza" :)
7. Pozyskiwanie wrażliwych danych z pamięci operacyjnej
8. Czy stosowanie restrykcyjnych zabezpieczeń ułatwia ataki? 9. Aplikacje mobilne a bezpieczeństwo
Wykład ukierunkowany pod kątem przekazania praktycznej wiedzy, projektantom, developerom i administratorom oraz wskazania konsekwencji braku właściwego podejścia do polityki bezpieczeństwa.
prezentacja na jubileuszowej konferencji POLCAAT2019 (IIA) na temat błędów poznawczych, różnicy pomiędzy postrezganiem triady i praktyk bezpieczeństwa informacji przez "bezpiecznikow" i regularnych użytkownikow sieci.
PLNOG14: Darmowe narzędzia wspomagające proces zabezpieczania Twojej firmy - ...PROIDEA
Borys Łącki - LogicalTrust
Language: Polish
Systematyczne dbanie o bezpieczeństwo systemów i sieci to skomplikowany oraz kosztowny proces. Prelegent w oparciu o wieloletnie praktyczne doświadczenie w zakresie zabezpieczenia zasobów IT firm, przedstawi najpopularniejsze narzędzia wspomagające zarządzanie bezpieczeństwem infrastruktury IT w firmach. Dzięki praktycznemu podsumowaniu wad i zalet poszczególnych otwartych rozwiązań, uczestnik prezentacji będzie mógł trafniej podjąć decyzje dotyczące wyboru konkretnego oprogramowania.
Zarejestruj się na kolejną edycję PLNOG już dzisiaj: krakow.plnog.pl
JDD 2017: Bezpieczny wypoczynek - czyli uwierzytelnianie RESTa (Krzysztof Be...PROIDEA
Aplikacje REST-owe są obecnie niezwykle popularne: tak te w pełni RESTful jak i te udostępniające mniej lub bardziej udane REST API. Nie znaczy to jednak, że mamy świetnie rozpoznane i doskonale opanowane mechanizmy uwierzytelniania w takich aplikacjach. Przeciwnie: wiele popularnych podejść niesie za sobą duże ryzyko i liczne problemy. Podczas prelekcji postaram się przybliżyć wady i zalety najważniejszych metod i odpowiedzieć na fundamentalne pytania: czy można zrealizować bezpieczne uwierzytelnianie bezstanowej aplikacji RESTowej w sposób równie bezstanowy? Czy JWT jest magicznym narzędziem rozwiązującym wszystkie problemy? Czy, jak i kiedy stosować OAuth i OpenID Connect?
Czy aby na pewno jest Pan człowiekiem. Użyteczność kodów CAPTCHA 2.Symetria
Prezentacja stanowi drugą część i uzupełnienie wcześniejszej prezentacji agencji e-biznes Symetria na temat kodów CAPTCHA.
W drugiej części tej prezentacji skupiono się na badaniu użyteczności kodów CAPTCHA za pomocą eye trackingu.
Badanie to jest prekursorskim badaniem kodów weryfikacyjnych na polskim rynku.
4Developers 2015: 10 przykazań bezpiecznego kodowania - Wojciech DworakowskiPROIDEA
YouTube: https://www.youtube.com/watch?v=fyRAef3lnTo&index=55&list=PLnKL6-WWWE_WNYmP_P5x2SfzJ7jeJNzfp
Speaker: Wojciech Dworakowski
Language: Polish
OWASP - Open Web Applications Security Project to fundacja której celem jest eliminacja problemów bezpieczeństwa aplikacji. OWASP działa w duchu "open source" i dostarcza narzędzi, informacji i wiedzy pozwalających podnieść poziom bezpieczeństwa aplikacji. W trakcie wykładu przedstawie krótko OWASP Top 10 w wydaniu dla programistów, czyli "Top 10 Proactive Controls" a więc najważniejsze zalecenia pozwalające na uniknięcie kluczowych błędów bezpieczeństwa.
4Developers: http://4developers.org.pl/pl/
Sześć sposobów na przejęcie sieci przemysłowej w twojej firmieSecuRing
Agenda:
1. Wstęp - kto i po co chciałby zaatakować naszą infrastrukturę
2. Przykłady w jaki sposób mógłby wyglądać atak – omówienie na konkretnych sytuacjach:
atak „z Internetu”
przejęcie stacji w LAN
przejęcie telefonu
atak lokalny na transmisje bezprzewodowe
atak lokalny na okablowanie, niezabezpieczone gniazdka, switche...
ataki na transmisję przez Internet - słabości VPN, łącza GSM, ...
3. Czy skuteczna separacja sieci przemysłowej jest możliwa? Czy zawsze jest zgodna z założeniami? Jak zidentyfikować nieoczywiste punkty styku i ocenić ich bezpieczeństwo?
4. Porady i wskazówki, jak minimalizować zagrożenie
[Confidence 2016] Red Team - najlepszy przyjaciel Blue TeamuPiotr Kaźmierczak
Piotr Kaźmierczak, Red Team Leader opowiadał jak ważną rolę w podnoszeniu kompetencji specjalistów od cyberbepieczeństwa pełni redteaming oraz zespół ofensywny. Zaprezentował różne narzędzia oraz przedstawił metody pracy Red Teamu. Prezentację zilustrowały przykłady z ostatnich treningów na poligonie cybernetycznym CDeX.
2020 11-15 marcin ludwiszewski - purple, red, blue and others - rainbow team...Marcin Ludwiszewski
opis kolorowych zespolow cybersecurity z naciskiem na purple team
rainbow security concept (blue, red, purple, white, etc.) with focus on purple vs red teaming
Semafor 2015
Systematyczne dbanie o bezpieczeństwo systemów i sieci to skomplikowany oraz kosztowny proces. Prelegent w oparciu o wieloletnie praktyczne doświadczenie w zakresie zabezpieczenia zasobów IT firm, przedstawi najpopularniejsze narzędzia wspomagające zarządzanie bezpieczeństwem infrastruktury IT w firmach. Dzięki praktycznemu podsumowaniu wad i zalet poszczególnych otwartych rozwiązań, uczestnik prezentacji będzie mógł trafniej podjąć decyzje dotyczące wyboru konkretnego oprogramowania.
Testowanie bezpieczeństwa aplikacji mobilnychSlawomir Jasek
Prezentacja z konferencji Mobilization 2014.
Abstrakt:
Na rzeczywistych przykładach pokażę jak wygląda proces oceny bezpieczeństwa aplikacji mobilnych. Zobaczymy m.in. jak wykrywać słabości związane z przechowywaniem danych na urządzeniu, nieprawidłowości w transmisji, oraz najgroźniejsze - błędy w API po stronie serwera (np. błędy logiczne, kontroli dostępu, REST). Jednocześnie okaże się jakie techniki utrudniają ataki, jaki jest faktyczny wpływ na ryzyko poszczególnych podatności, oraz jakie zabezpieczenia warto zastosować w różnych aplikacjach.
CONFidence 2015: APT x 3 - trzy firmy, trzy wektory ataków, trzy do zera - wy...PROIDEA
Speaker: Borys Lacki
Language: Polish
Historia trzech ataków typu APT wykonanych podczas kontrolowanych testów penetracyjnych. W których od zerowej wiedzy na temat atakowanej firmy przejęto infrastrukturę i uzyskano dostęp do poufnych informacji wykorzystując 0-day w Quake, pendrive w toalecie damskiej oraz plik faktura.exe. Oprócz mrożących krew w żyłach historii zostaną pokazane praktyczne porady jak nie stać się bohaterem kolejnej edycji wykładu.
CONFidence: http://confidence.org.pl/pl/
Jak kraść miliony, czyli o błędach bezpieczeństwa, które mogą spotkać również...The Software House
Często zdarza się, że na testy bezpieczeństwa nie ma czasu lub budżetu. Testy te często są wykonywane na sam koniec, gdy nie ma możliwości na dłuższą analizę. Przez takie myślenie, padają firmy lub zwykli obywatele tracą dostęp do swoich danych czy po prostu te dane wyciekają. Przeanalizujemy kilka ostatnich ataków, zastanowimy się jak można było temu zapobiec.
Fragment prezentacji firmy YetiForce dotyczącej OWASP ASVS 3.1 EA a w szczególności punktu pierwszego "1: Architektura, projektowanie i modelowanie zagrożeń".
Developer in a digital crosshair, 2023 edition - 4DevelopersSecuRing
Recent years show a significant increase in attacks against libraries, tools, and infrastructure used in application development, as well as directly against developers and software companies. From fake libraries and malicious changes to popular libraries or programming languages to vulnerabilities in CI/CD infrastructure components.
During the presentation, you will discover a handful of interesting, fresh examples and attack techniques and, perhaps most importantly, learn how to work safely as a programmer. You will find out about typosquatting, dependency confusion, protestware and discover stories of attacks on PHP, Codecov, Homebrew, npm, Ruby Gems, or GitHub.
Developer in a digital crosshair, 2022 edition - Oh My H@ck!SecuRing
Attacks on third-party libraries and tools that are often used while developing software have become dramatically frequent.
Among these attacks, one can find dependency confusion, issues in popular dev tools (Codecov, Homebrew, npm...), typosquatting, incidents (PHP, GitHub...), or malicious changes in popular dependencies (UAParser.js, coa, node-ipc...). I will share a lot of gripping real-life examples of such attacks, their causes and effects, and help you stay secure while developing software.
Developer in a digital crosshair, 2022 edition - No cON NameSecuRing
The frequency of attacks on third-party libraries and tools used in software development has dramatically increased in recent years.
Typosquatting, dependency confusion, malicious changes in popular dependencies (UAParser.js, coa, node-ipc...), issues in popular dev tools (Codecov, Homebrew, npm...) or incidents (PHP, GitHub...). In this presentation, I will go over many fascinating, recent examples of these attacks, their causes and effects, and recommend to you how to stay secure when developing software.
Is persistency on serverless even possible?!SecuRing
In addition to being a common option in cloud environments, serverless computing is also a suggested method for creating plenty of things! Did you ever consider its mechanics? Is serverless truly server-less? How does the execution environment function? In this event-driven compute service, is persistency even conceivable?
I will not lie – Remote Code Executions and Command Injections are uncommon, but what if one occurs in your function? Additionally, it may be brought in by an attacker through dependency injection. I will demonstrate how to use it to obtain persistency and exfiltrate more data than the function role gives.
Let us figure out:
- How serverless infrastructure functions.
- Why persistency is possible in this semi-volatile environment.
- How to use pseudo shell over HTTP for serverless environment research.
- An exploitation demo – how can we make use of an RCE vulnerability to obtain a persistency.
- Possible mitigations.
Let us hijack the data real-time from the AWS Lambdas and GCP Cloud Functions!
Presented at: Confidence 2022, AlligatorCon 2022, Secops Polska Meetup #32, DevSecCon Poland 2022, AWS Community Day Warsaw 2022.
What happens on your Mac, stays on Apple’s iCloud?!SecuRing
“$ sudo ls ~/Desktop: Operation not permitted”. Apple’s Transparency, Consent, and Control (TCC) framework limits access to private information like documents, a camera, a microphone, emails, and more in order to preserve your privacy. Since authorisation is required to grant such access, the mechanism key design priority was clear user consent.
At Black Hat USA 2021, I co-presented considerable research on abusing the TCC mechanisms, however, this time, we won’t be directly exploiting the TCC. Given that iCloud has tons of macOS users’ secrets, why keep attacking the TCC? The default configuration makes Mac synchronize a lot of data. Don’t you have your iMessages/Photos/Calendars/Reminders/Notes accessible from iCloud? That’s good because you take care of your privacy… but most users don’t. :)
The brand-new research on abusing Apple’s iCloud to gain access to users’ sensitive data will be shared during the presentation. All that from a malicious applications’ perspective without any additional permissions.
0-Day Up Your Sleeve - Attacking macOS EnvironmentsSecuRing
Do you have Macs in your company's infrastructure? Nowadays, I bet that in most cases the answer would be YES. Macs stopped being computers only used in startups. We can observe them even in huge legacy environments in banks and other corporations. The problem is that they are usually not symmetrically secured, compared to the rest of Windows stations. Macs are not immune, they can be insecurely configured and now...even Apple admits that malware is present on Macs.
In this presentation I will:
1. Introduce you to macOS security mechanisms
2. Perform step-by-step macOS infection based on my 0-day (live demo)
3. Show you post-exploitation techniques
4. Attack installed apps and collect data from them
5. Give recommendations on how to harden your Mac and macOS infrastructure
Developer in a digital crosshair, 2022 editionSecuRing
This presentation takes you through recent attacks aimed at software developers and software companies. First it starts with attacks on libraries you install or have installed (typosquatting, pushing malicious library updates due to maintainer's credential takeover, protestware), even your private ones (dependency confusion). Second it shows attack on tools which are used in software development (package managers). Third, there are examples of attacks onto developer's infrastructure (PHP programming language git sever, GitHub OAuth incident with Heroku and Travis-CI).
20+ Ways To Bypass Your Macos Privacy MechanismsSecuRing
In this presentation, we showed multiple techniques that allowed us to bypass this prompt, and as a malicious application, get access to protected resources without any additional privileges or user’s consent.
In the search for a webinar platform, we have tested the security of 14 of them. As a result, in half of tested platforms we have identified high-severity vulnerabilities for example access control issues allowing unprivileged attendees to become a host/presenter or sensitive data leakage.
20+ Ways to Bypass Your macOS Privacy MechanismsSecuRing
"TotallyNotAVirus.app" would like to access the camera and spy on you. To protect your privacy, Apple introduced Transparency, Consent, and Control (TCC) framework that restricts access to sensitive personal resources: documents, camera, microphone, emails, and more. Granting such access requires authorization, and the mechanism's main design concern was clear user consent.
In this talk, we will share multiple techniques that allowed us to bypass this prompt, and as a malicious application, get access to protected resources without any additional privileges or user's consent. Together, we submitted over 40 vulnerabilities just to Apple through the past year, which allowed us to bypass some parts or the entire TCC. We also found numerous vulnerabilities in third-party apps (including Firefox, Signal, and others), which allowed us to avoid the OS restrictions by leveraging the targeted apps' privileges.
In the first part of the talk, we will give you an overview of the TCC framework, its building blocks, and how it limits application access to private data. We will explore the various databases it uses and discuss the difference between user consent and user intent.
Next, we will go through various techniques and specific vulnerabilities that we used to bypass TCC. We will cover how we can use techniques like process injection, mounting, application behavior, or simple file searches to find vulnerabilities and gain access to the protected resources.
The audience will leave with a solid understanding of the macOS privacy restrictions framework (TCC) and its weaknesses. We believe there is a need to raise awareness on why OS protections are not 100% effective, and in the end, users have to be careful with installing software on their machines. Moreover - as we're going to publish several exploits - red teams will also benefit from the talk.
Author: Paweł Rzepa
In this talk I'm going to show you various attack vectors against the serverless applications built from AWS Lambda functions. You'll see:
- my findings on publishing malicious NPM packages to smuggle malicious code into legitimately looking dependences,
- examples of validation errors in serverless applications, including Denial of Wallet attacks and RCE in a fugacious, serverless environment
- serverless attacks and security nuances in Azure and GCP
- recipes to prevent those attacks
XPC is a well-known interprocess communication mechanism used on Apple devices. Abusing XPC led to many severe bugs, including those used in jailbreaks. While the XPC bugs in Apple's components are harder and harder to exploit, did we look at non-Apple apps on macOS? As it turns out, vulnerable apps are everywhere - Anti Viruses, Messengers, Privacy tools, Firewalls, and more.
This presentation:
1.Explain how XPC/NSXPC work
2.Present you some of my findings in popular macOS apps (e.g. local privilege escalation to r00t)
3.Abuse an interesting feature on Catalina allowing to inject an unsigned dylib
4.Show you how to fix that vulnz finally!
WebApps vs Blockchain dApps (SmartContracts): tools, vulns and standardsSecuRing
The presentation focuses on the whole process of security testing and present it by analogies to the web applications which are quite well-known. It covers the whole SDLC and show the similarities and differences in the arsenal of vulnerabilities, security tools and standards between the smart contracts and web applications on each step. Even though there exist a lot of great security projects for smart contracts, we do not have single, widely accepted security standard (such as ASVS in web apps world). That is why we introduce SCSVS (Smart Contract Security Verification Standard), a open-source 13-part checklist created to standardize the security of smart contracts for developers, architects, security reviewers and vendors.
WebApps vs Blockchain dApps (SmartContracts): tools, vulns and standardsSecuRing
The presentation focuses on the whole process of security testing and present it by analogies to the web applications which are quite well-known. It covers the whole SDLC and show the similarities and differences in the arsenal of vulnerabilities, security tools and standards between the smart contracts and web applications on each step. Even though there exist a lot of great security projects for smart contracts, we do not have single, widely accepted security standard (such as ASVS in web apps world). That is why we introduce SCSVS (Smart Contract Security Verification Standard), a open-source 13-part checklist created to standardize the security of smart contracts for developers, architects, security reviewers and vendors.
Author: Jakub Kaluzny
Let's talk about large-scale security programmes and maintaining security with tens of project teams - agile or waterfall, in-house or outsourced. I will discuss how to effectively track security requirements, organise threat modelling sessions, log output from those and translate it into penetration testing scope and test cases. We will dive deep into evil brainstorming, come up with abuser stories for each user story and define what makes the SDLC process secure or not. This talk is based on my work with different organisations in multiple countries and observations what works well in regards to security at scale and what does not.
While it is quite common practice to do periodic security assessments of your local network, it is really rare to find a company who puts the same effort for testing the security in their cloud. We have to understand what new threats and risks appeared with the cloud and how should we change our attitude to testing cloud security. The goal of my presentation is to show how security assessment of cloud infrastructure it is different from testing environments in classic architecture. I'll demonstrate a hypothetical attack on a company which is fully deployed in the AWS environment. I’m going to show the whole kill chain starting from presenting cloud-applicable reconnaissance techniques. Then I’ll attack the web application server hosted on EC2 instance to access its metadata. Using the assigned role, I’ll access another AWS EC2 instance to escalate privileges to the administrator and then present how to hide fingerprints in CloudTrail service. Finally, I’ll demonstrate various techniques of silent exfiltrating data from AWS environment, setting up persistent access and describe another potential, cloud-specific threats, e.g. cryptojacking or ransomware in the cloud. The presentation shows practical aspects of attacking cloud services and each step of the kill chain will be presented in a form of an interactive, live demo. On the examples of presented attacks, I’ll show how to use AWS exploitation framework Pacu and other handy scripts.
Web Apps vs Blockchain dApps (Smart Contracts): tools, vulns and standardsSecuRing
Last year at AppSec EU I had a presentation about the Ethereum smart contracts and did a technical showcase of some of their potential vulnerabilities and security flaws. I also presented my proposition on how to handle the responsible disclosure process in the smart contracts world.
This year I want to focus on the whole process of security testing and present it by analogies to the web applications which are quite well-known. Smart contracts are described as Web3 decentralized apps and I believe that my talk will not only bring new light on this subject but will also help to understand and organize the way of testing. I am going to cover the whole SDLC and show the similarities and differences between the smart contracts and web applications on each step.
The presented overview is especially important nowadays when the biggest companies are building their own blockchain platforms and cryptocurrencies – i.e. Libra introduced by Facebook (which by the way also supports smart contracts).
I am also going to show the differences in the arsenal of vulnerabilities, security tools and standards by the analogy to web apps arsenal. I think that, even though there exist a lot of great security projects for smart contracts, we do not have a single, widely accepted security standard (such as ASVS in web apps world). I would like to discuss potential work that needs to be done in that area and show my preliminary work on that matter.
After this presentation audience will know what are the similarities and differences between smart contracts and web apps in the SDLC, an arsenal of tools and standards, but also will have a fresh overview of possible options and current trends.
Budowanie i hakowanie nowoczesnych aplikacji iOSSecuRing
Po ostatniej prezentacji dotyczącej pentestów bez jailbreaka, autor zdecydował stworzyć prezentację defensywną. Znajdują się w niej informacje o najczęściej występujących problemach w nowoczesnych aplikacjach iOS oraz wskazówki jak sobie z nimi radzić. W prezentacji przedstawiona jest równie nowa otwartoźródłowa biblioteka iOS Security Suite dostępna pod adresem https://github.com/securing/IOSSecuritySuite
We need t go deeper - Testing inception apps.SecuRing
When it comes to thick-clients, java applets, embedded devices or mobile apps - often, the idea is to forget about HTTP/S stack, plaintext POST parameters, and instead, implement a custom communication protocol. - Sending files for printing? Caesar cipher does not support full UTF-8, so use AES in ECB mode. - Malware attacking online banking? Even over HTTPS, double-encrypt POST parameters. If your clients are rich, use asymetric encryption, for better protection. - Planning SOAP WS? Use WCF Binary XML and put it in a START-TLS tunnel wrapped over a TCP connection. Welcome to the world of application/x-inception-data content types, <meta charset=obscure> encoding and custom cryptography. Ideas that usually implement methods of 'security by obscurity'. Once the outer layer of obfuscation is off, very often the server backend reveals simple access control issues, SQL query shells or code execution vulnerabilities. I will discuss real-world examples from enterprise solutions tests which require a bit more effort to allow tampering with data send from the client: - intercepting the traffic, bypassing NAC - decapsulating encryption and encoding layers - hooking into function calls, modifying packages - reverse-engineer proprietary protocols and encryption.
After my offensive presentation "Testing iOS Apps without Jailbreak in 2018" it is time to focus also on building not just breaking. This talk will cover the most important milestones in reaching secure iOS/macOS apps. I'm going to show you how to develop modern & secure iOS/macOS apps using new security features presented at the latest Apple's Worldwide Developers Conference. Hackers will be satisfied as well, since I'm going to cover also pen tester's perspective. What's more - I will share with you details of multiple vulnerabilities (*including not disclosed previously*) that I found during security assessments and my research of Apple's applications.
2. Abstrakt
●
Whoami
●
Kto i po co zaatakuje naszą aplikację
●
Analiza ryzyka – podejście racjonalne
●
●
Najciekawsze podatności w aplikacjach
mobilnych - przykłady
Najważniejsze zasady bezpieczeństwa
3. # whoami
Konsultant bezpieczeństwa (~ 10 lat), setki projektów, głównie
różnego typu aplikacje
SecuRing (od 2003)
Testowanie i doradztwo dotyczące bezpieczeństwa aplikacji i systemów IT
Jeśli to możliwe w ramach„white-box” (przegląd konfiguracji, kodu,
konsultacje), a także już na etapie definiowania architektury
Wynikiem testu jest dokładny raport opisujący szczegółowo znalezione
podatności (oraz wykonane testy), wraz z rekomendacjami/sposobami
naprawy
4. Kto i po co zaatakuje naszą aplikację?
Krzysztof Jarzyna
ze Szczecina
„grubszy cwaniak”
„script-kiddie”
Coś mu się przypadkiem
udało (lub nie), i afera
gotowa.
Dorwał się do narzędzi,
wali na oślep, zwykle nie
bardzo rozumiejąc co się
dzieje.
Ma motywację, zasoby
oraz możliwości
przeprowadzenia ataku
nakierowanego
5. Analiza ryzyka – podejście racjonalne
Profil ryzyka zależy od aplikacji – jej funkcji
biznesowych, potencjalnych strat, zysków dla intruza.
6. Przykład 1
●
●
●
Aplikacja mobilna dla kibiców
M.in. typowanie wyników meczu, wśród prawidłowych
losowanie biletów
Po wysłaniu typowania w aplikacji znika ta opcja,
można jedynie podglądnąć swój typ
Jak zaatakuje ten proces intruz?
7. Lokalne proxy – pozwala m.in. na edycję oraz
powtarzanie zleceń HTTP
8. Jak to zrobić poprawnie?
●
●
●
●
Pamiętaj, że ruch pomiędzy aplikacją a
serwerem może być przechwycony i
zmodyfikowany
SSL nie chroni przed lokalnym tamperingiem
Walidacja musi być również po stronie
serwera!
Nie ufaj mechanizmom bezpieczeństwa po
stronie klienta
10. Przykład 2
Aplikacja bankowości mobilnej, do uwierzytelnienia i autoryzacji
wymagany jest kod PIN.
Po 3-krotnym wprowadzeniu błędnego PIN-u konto blokuje się na
serwerze.
Pewne funkcje aplikacji (np. historia transakcji) działają również offline.
Aplikacja musi więc przechowywać lokalnie część danych pobranych z
serwera.
Dane te są trzymane w formie zaszyfrowanej, w prywatnym katalogu
dostępnym jedynie dla tej aplikacji. Do odszyfrowania konieczne jest
podanie PIN-u użytkownika.
Nie użyto stałego klucza zaszytego w aplikacji.
11. Spojrzenie intruza
●
●
●
●
Aby ukraść pieniądze potrzebuje kod PIN
Załóżmy, że udało mu się przejąć pełną
kontrolę nad urządzeniem mobilnym (np.
kradzież, malware...)
Jednak nie może podsłuchać kodu PIN – nie
ma możliwości kontroli nad urządzeniem w
trakcie gdy użytkownik korzysta z bankowości
Jak może uzyskać PIN?
12. Przykład 2 – proces offline.
Kod PIN jest używany również do odszyfrowania danych trzymanych
lokalnie.
Jest to funkcja, która działa bez połączenia do Internetu, więc kod PIN
nie może być zweryfikowany po stronie serwera.
Nawet jeśli aplikacja się zablokuje po 3 nieudanych próbach, jest to
proces offline. Konto nie zablokuje się na serwerze, a intruz może
odtworzyć stan aplikacji sprzed zablokowania i próbować ponownie.
Czyli - intruz może bez ograniczeń łamać kod PIN offline. Prawidłowy
kod pozna po tym, iż po rozszyfrowaniu uzyska sensowne dane.
Nawet jeśli kod jest złożony (a w praktyce najczęściej to kilka cyfr),
złamanie zajmie mu maksymalnie kilka godzin.
13. Jak to zrobić poprawnie?
●
●
●
●
Wszystkie próby użycia hasła (np. w celu
uwierzytelnienia lub autoryzacji) powinny być
weryfikowane na serwerze, nie lokalnie na urządzeniu.
Poprawne użycie kryptografii – uwaga na błędy
pozwalające na łamanie siłowe offline.
Najlepiej nie przechowywać żadnych danych wrażliwych
na urządzeniu, nawet w formie zaszyfrowanej
Uwaga na logi systemowe itp.
Warto poczytać:
http://wampir.mroczna-zaloga.org/archives/1147-jak-zepsuc-uwierzytelnienie-w-aplikacji-mobilnej.html
15. Przykład 3
Aplikacja mobilna do wyświetlania w czasie
rzeczywistym oraz natychmiastowego zlecania
różnych operacji.
W tym celu opracowano specjalny protokół,
komunikujący się przez SSL z serwerem.
22. RegisterUser – drążymy dalej
Po dodaniu kolejnych brakujących parametrów:
●
Incorrect first name
●
Group with name null doesn't exist
●
Group with name admin doesn't exist
●
Group with name Administrator doesn't exist
●
A grupa „Root” ?
23. Protokół – Game Over
<soapenv:Body>
<registerUserResponse
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<registerUserReturn xsi:type="xsd:string">
User was registered sucessfully with id=5392745
</registerUserReturn>
</registerUserResponse>
</soapenv:Body>
Tak zarejestrowany użytkownik po zalogowaniu mógł
zarządzać zasobami WSZYSTKICH INNYCH
UŻYTKOWNIKÓW SYSTEMU
25. Inicjalizacja mobilnego kanału
bankowości
Bankowość internetowa, logowanie za pomocą hasła,
autoryzacja operacji za pomocą kodów SMS.
Aplikacja bankowości mobilnej, zabezpieczona za
pomocą PIN-u (uwierzytelnienie, autoryzacja
transakcji).
Solidna kryptografia w procesie dodawania nowego
urządzenia do konta, oraz w trakcie korzystania z
bankowości.
Proces przemyślany, aby użytkownik nie zrobił
sobie krzywdy.
26. Inicjalizacja mobilnego kanału proces
●
●
Po zalogowaniu w serwisie www, użytkownik wybiera opcję dodania
nowego urządzenia mobilnego. Wprowadza w formularzu nowy kod
PIN. Wyświetla się kod QR („seed” kryptograficzny) do
zeskanowania w urządzeniu.
Użytkownik skanuje kod QR w telefonie. Podaje na urządzeniu ten
sam kod PIN.
●
Aplikacja mobilna przesyła do serwera zaszyfrowany PIN-em „seed”
●
Serwer porównuje, czy dane się zgadzają
●
W aplikacji www należy następnie potwierdzić dodanie nowego
urządzenia, klikając przycisk „Akceptuj”.
27. Jak patrzy na to intruz?
●
●
●
●
Wyobraźmy sobie, że intruz przejął kontrolę nad
komputerem użytkownika (np. malware)
Poznał login i hasło do bankowości internetowej. Nie
może jednak ukraść pieniędzy, ponieważ nie ma
dostępu do kodów sms
Ale – przecież autoryzacja transakcji możliwa jest
również za pomocą aplikacji mobilnej
Jak przejąć aplikację mobilną?
28. Inicjalizacja mobilnego kanału - problem
Brak autoryzacji procesu dodawania nowego
urządzenia mobilnego!
Malware działający na stacji użytkownika
może dopisać sobie - bez jego wiedzy - nowe
urządzenie mobilne, uzyskując w ten sposób
możliwość autoryzacji transakcji.
ragecomic.fr
29. BankDroid
●
●
●
●
Aplikacja służy do informowania online o saldach oraz
zmianach na kontach różnych skandynawskich banków
Działa w tle, odpytując o status co chwilę
Łączy się automatycznie z bankami również gdy telefon
jest podłączony do niezaufanych sieci
100 000 – 500 000 instalacji
https://play.google.com/store/apps/details?id=com.liato.bankdroid
30. BankDroid – kod źródłowy (GPL)
CELOWO wyłączono weryfikację certyfikatów SSL banków:
public Urllib(boolean acceptInvalidCertificates) {
this(acceptInvalidCertificates, false);
}
public void checkServerTrusted(java.security.cert.X509Certificate[] chain, String authType)
throws java.security.cert.CertificateException {
// TODO Auto-generated method stub
}
https://github.com/liato/android-bankdroid
32. MITM na SSL? Ale kto by to potrafił?!!
To przecież takie trudne!
Czyżby?
33. dSploit – dzieciak sąsiadów już ma
Bardzo prosty interfejs, do obsługi przez laika.
WiFi Scanning & Common Router Key Cracking
Deep Inspection
Vulnerability Search
Multi Protocol Login Cracker
Packet Forging with Wake On Lan Support
HTTPS/SSL Support (SSL Stripping + HTTPS -> Redirection)
MITM Realtime Network Stats
MITM Multi Protocol Password Sniffing
MITM HTTP/HTTPS Session Hijacking
MITM HTTP/HTTPS Hijacked Session File Persistance
MITM HTTP/HTTPS Realtime Manipulation
GPL, do pobrania z http://dsploit.net
37. Nie wymagaj od użytkowników zbyt wiele!
Test na użytkownikach aplikacji Android – okienko
udające instalację nowego CA w telefonie.
Po zainstalowaniu kontrolowanego przez intruza CA, może on
przeprowadzić atak MITM na dowolne połączenie SSL w sposób
niezauważalny dla ofiary!
38. Mam nowy certyfikat – hurra!
●
73% osób zaakceptowało nowe CA – przez co stali się podatni na atak MITM
- 77% z nich było przekonanych, iż w ten sposób zwiększyli swoje
bezpieczeństwo
- tylko 2% podejrzewało, iż instalacja nowego CA mogła mieć negatywny
wpływ na ich prywatność
źródło: https://www.owasp.org/images/7/77/Hunting_Down_Broken_SSL_in_Android_Apps_-_Sascha_Fahl%2BMarian_Harbach%2BMathew_Smith.pdf
Wnioski
●
Nie zadawaj trudnych pytań!
●
Rozwiązanie: certificate pinning.
picardfacepalm.com
39. Podejście racjonalne
●
●
●
●
●
Kto i po co chciałby zaatakować
naszą aplikację? Jakich zasobów do
tego potrzebuje?
Koszt zabezpieczenia nie może być
większy niż wartość chronionych
zasobów
Negatywny wpływ na używalność czy
dostępność
Przyzwyczajenia użytkowników
Uwaga na fałszywe poczucie
bezpieczeństwa i odpowiedzialność
Andrzej Tobis - Kierownica
www.otwartazacheta.pl
40. Mniejsze ryzyko
●
●
Przechowywanie danych wrażliwych w pamięci operacyjnej
urządzenia w trakcie pracy aplikacji.
Użycie klawiatury systemowej - niektóre implementacje
zostawiały w systemie informacje o wciskanych klawiszach.
●
Brak możliwości przeniesienia na kartę SD
●
...
Nawet jeśli ryzyko nie jest wysokie (trudność w wykorzystaniu),
zabezpieczenie może być wdrożone z powodów wizerunkowych.
42. Pamiętaj!
Myśl o bezpieczeństwie – już na etapie projektowania!
Bezpieczeństwo transmisji.
Lokalnie przechowywane dane.
Środowisko po stronie serwera.
Wiele warstw zabezpieczeń, zasada najmniejszych przywilejów.
Nie wymagaj od użytkownika zbyt wiele.
Andrzej Tobis - Dodawanie
www.otwartazacheta.pl
43. Merry Hacking X-Mas!
www.securing.pl/konkurs/
●
●
●
I miejsce - Płatny, miesięczny staż w naszej
firmie.
II miejsce - Bilet wstępu na konferencję
Confidence 2014.
III miejsce - Książka "The Web Application
Hacker's Handbook".
W celu oszacowania profilu ryzyka, robi się analizę ryzyka.
Zupełnie inaczej ryzyko wygląda dla aplikacji typu rozkład jazdy autobusów, a inaczej dla aplikacji obsługującej bitcoiny.
W pierwszym przypadku trudno będzie spieniężyć
Grafika:
LoL?
Zdziwko?
Szyderczy śmiech?
Szczegółowy opis procesu, użytych metod, zajmował 3 strony A4.
Zastanówmy się, czy dziecko sąsiadów by to potrafiło