Aplikacja Android AppSec (Kotlin)
pomoże Ci ćwiczyć dla punktów bezpieczeństwa na Androida. Robimy to z właściwych powodów - aby pomóc programistom, aby ich aplikacje były bardziej bezpieczne. Najlepszym sposobem na sprawdzenie, czy Twoja aplikacja jest zgodna z bezpiecznymi najlepszymi praktykami programistów mobilnych, jest wykonywanie oceny bezpieczeństwa aplikacji, która może obejmować automatyczne badania bezpieczeństwa aplikacji mobilnych, fuzzy, ręczne testowanie penetracji i więcej. Ta aplikacja reprezentuje niektóre z wiedzy, którą dzielimy z społecznością Infosec. Próbujemy zbudować wrażliwą aplikację na podstawie Przewodnika Testowania Bezpieczeństwa Mobilnego
W tej aplikacji obejmujemy poniżej punkty:
1 ruch HTTP
1.1 HTTP Traffic
2 Przypinięcie klucza publicznego
2.1-4 Certyfikat Dipass Bypass
3 Traffic Non-HTTP
3,1 TCP Traffic
3,2 UDP Ruch
4 Traffic WebSocket
4.1 Gniazdo internetowe (WS)
4.2 Web Socket Secure (WSS)
5 wykrywania korzenia
5.1 Aplikacje do zarządzania rootem
5.2 Potencjalnie niebezpieczne aplikacje
5.3 Aplikacje klologisujące root
5.4 Klucze testowe
5,5 Niebezpieczne rekwizyty
5.6 BusyBox Binary 5.7 SU binarne
5,8 SU EXISTS
5,9 RW System
5.10 SafetyNet
5.11 Korzystanie z procesów Biegłych
6 Wykrywanie emulatora
6.1 Wirtualny numer telefonu
6.2 Identyfikatory urządzeń
6.3 Sprzętowe Dane techniczne
6.4 Wykrywanie Qemu
6.5 Sprawdzanie oparte na pliku
6.6 Sprawdzanie oparte na bazie IP
6.7 Nazwa pakietu
6.8 Flaga debugowa
6.9 Nazwa operatora sieci
7 debugowania detekto n
8 niepewne przechowywanie danych
8.1 Bazy danych SQLite (niezaszyfrowane)
8.2 Bazy danych SQLite (zaszyfrowane)
8.3 Kredyt bazy danych (niezaszyfrowane)
8.4 Bazy danych Realm (zaszyfrowane)
8.5 Bazy danych FireBase W czasie rzeczywistym
8.6 Udostępnione Preferencje
8.7 Przechowywanie wewnętrzne
8.8 Przechowywanie zewnętrzne
8.9 Keystore
8.10 Keychain
8.11 Klawiatura Cache
8.12 Interfejs użytkownika
8.13 Kopia zapasowa aplikacji
8.14 Zrzuty ekranu
8.15 Pamięć
8.16 Słownik użytkownika Cache
8.17 Pastylki
8.18 Dane aktywności
9 Logów
9.1 Informacje
9.2 Błąd
9.3 Ostrzeżenia
9.4 Debug
9.5 Verbose
9.6 WTF
10 dostawców treści
10.1 Wtrysk SQL
10.2 System plików Expose
11 szyfrowanie
11.1 Kody uwierzytelniania wiadomości
11.2 Wiadomość Digest
11.3 Podpisy
11.4 Wdrożenia niestandardowe
11.5 Caesar Cipher
11.6 Słaba generacja klucza
11.7 Słaba liczba losowa
11.8 Słabsze wyściółki
12 Symetryczne szyfrowanie
12.1 Des
12.2 3des
12.3 RC4
12.4. Blowfish
12,5 AES
12.6 Przewidywalne wektor inicjalizacji
13 Szyfrowanie asymetryczne
13.1 RSA
14 mieszka
14.1 MD4
14.2 MD5
14.3 Sha1
15 Uwierzytelnianie
15.1 Biometryczny
15.2 Potwierdź poświadczenia
15.3 2FA - OTP Wyciek
15.4 2FA - Manipulacja odpowiedzi 15.5 2FA - Manipulacja kodu stanu
15,6 2FA - OTP Brute-Force
15,7 2FA - OTP Brute-Force 2
15.8 2FA - Walidacja integralności
15.9 Lock aplikacji
16 Binary Ochrona
16.1 Biblioteka (NDK)
16.2 Packers
16.3 Obfuscator
17 ID urządzenia
17.1 SSAID / Android_id
17.2 Urządzenie Wi-Fi Mac
17.3 Lokalizacja GPS
17.4 IMEI / ESN
17.5 MEID
17.6 IMSI
18 aplikacji internetowej
18.1 HTML5 Controls
18.2 BruteForce
18.3 Logowanie obejściowe - Manipulacja plików cookie
18.4 Kodowanie - Hashing
18.5 JavaScript - Info Wyciek
18.6 Serwer Fingerprint
18.7 Walidacja po stronie klienta Obejście
18.8 Wyliczenie hasłem użytkownika
18.9 OTP BruteForce
18.10 jwt m isconfiguration
18.11 Zgadyny identyfikator sesji
18.12 Metody HTTP Reszta API
18.13 SSRF
18.14 xxe
18.15 Nieograniczony plik Prześlij
18.16-17 LFI-RFI
18.18 Deserialization
18.19 XPath Injection
18.20 Metafiles - Info Wyciek
18.21 RIA Cross Domain Policy
18.22 Poświadczenia domyślne
18.23 OS Wtrysk poleceń
18.24 S3 Bucket Misconfiguration
18.25 Ścieżka Traversal
18.26 CAPTCHA Obejście
18.27 IP WhiteListing obejście
18.28 SSTI
18.29 Komentarz i metadane
18.30 Wstrzyknięcie kodu
18.31 Stare pliki kopii zapasowych
18.32 Insecure Direct Obiekt Referencje
19 Różne
19.1 DEEPLINK
19.2 Kod QR
19.3-7 Backdoor 1-5
Będzie to świetne, jeśli możesz obsługiwać i podzielić się swoimi przemyśleniami, aby ulepszyć tę aplikację.
1. Insecure Data Storage
i. SQLite Database (Encrypted) challenge added
ii. KeyStore challenge added
iii. Clipboard challenge updated (Thanks Niklas Barsk for feedback)
2. Cleanup task code base - move application-related operation in utils class (anti_debugging,authentication,binary and content provider packages)