Jaka jest twoja domena aplikacji? To zależy.
Odkąd użyto słowa "Zwinność", domyślam się, że jest to aplikacja internetowa. Mam dla ciebie łatwą odpowiedź.
Kup egzemplarz Burp Suite (jest to wynik Google nr 1 za "beknięcie" - pewne potwierdzenie!); kosztować 99EU lub ~ 180 USD, lub 98 dolarów Obama, jeśli poczekasz do listopada.
Burp działa jako serwer proxy. Przeglądasz swoją aplikację internetową za pomocą przeglądarki Firefox lub IE lub cokolwiek innego, i gromadzi wszystkie generowane przez Ciebie hity. Te trafienia są przekazywane do funkcji o nazwie "Intruder", która jest fuzzerem internetowym. Intruz wymyśli wszystkie parametry, które podasz do każdej z procedur obsługi zapytań. Następnie spróbuje szalonych wartości dla każdego parametru, w tym metaznaków SQL, systemu plików i HTML. W typowym postie złożonych formularzy wygeneruje to około 1500 trafień, które przejrzysz, aby zidentyfikować przerażające - lub, co ważniejsze w kontekście Agile, nowe - odpowiedzi na błędy.
Fuzzing każdego programu obsługi zapytań w twojej aplikacji internetowej przy każdej iteracji wydania jest # 1 rzeczą, którą możesz zrobić, aby poprawić bezpieczeństwo aplikacji bez ustanawiania formalnego "SDLC" i dodawania pracowników. Poza tym sprawdź swój kod pod kątem najważniejszych zabezpieczeń aplikacji internetowych:
Używaj tylko sparametryzowanych przygotowanych instrukcji SQL; nie należy nigdy łączyć łańcuchów i podawać ich do obsługi bazy danych.
Filtr wszystkie wejścia do białej listy znanych dobrych znaków (alnum, podstawowe znaki interpunkcyjne) i, co ważniejsze, filtrowanie danych wyjściowych z wyników zapytań do „neutralizują” metaznaki HTML do podmiotów html (quot, lt, gt itp.).
Użyj długich losowych identyfikatorów trudnych do odgadnięcia w dowolnym miejscu, w którym obecnie używasz prostych identyfikatorów wierszy całkowitych w parametrach zapytania i upewnij się, że użytkownik X nie widzi danych użytkownika Y przez zgadywanie tych identyfikatorów.
Przetestuj wszystkie programy obsługi zapytań w swojej aplikacji, aby upewnić się, że działają tylko wtedy, gdy jest wyświetlany prawidłowy, zalogowany plik cookie sesji.
Włącz ochronę XSRF w stosie internetowej, która będzie generować ukrytym formularzu tokenów parametrów na wszystkich świadczonych formach, aby uniemożliwić napastnikowi od stworzenia złośliwych linków, które złożą formularze do niczego nie podejrzewających użytkowników.
Użyj bcrypt --- i nic więcej --- do przechowywania haszowanych haseł.
+1 Cóż złożyć, @David. Ja * jestem * ekspertem ds. Bezpieczeństwa i jakoś wciąż widzę tak zwanych "ekspertów", którzy nie otrzymują tej podstawowej zasady. – AviD