Aplikacje internetowe

Bełdziowe spojrzenie na aplikacje internetowe

Archwium kategorii ‘Bezpieczeństwo’

Flashowe logowanie

Poniższa notka będzie opisywała dwa zagadnienia, które na blogu nie były jeszcze poruszane. Będą to technologia Flash oraz narzędzie Burp Suit. Flash większości osób kojarzy się wyłącznie z animacjami. Jednakże jakiś czas temu firma Adobe zadbała o developerów tworząc framework Flex. W związku z tym coraz częściej Flash może być spotkany w roli środowiska dla […]

Bezpieczny upload plików

Dzisiejsza notka będzie składała się z dwóch części. W pierwszej z nich zostaną zaprezentowane słabości wykorzystywanych często sposobów weryfikacji uploadowanych plików. Druga część będzie koncentrowała się na technikach, których wdrożenie przyczyni się do znacznego wzrostu bezpieczeństwa mechanizmu wgrywania plików.

Cross-site request forgery – CSRF

W notce Bezpieczenstwo mechanizmu sesji wspomniałem o niebezpieczeństwie związanym z CSRF. Kilka osób dało mi znać, że pojecie to nadaj nie jest dla nich jasne. W poniższej notce postaram się rozwiązać wszelkie wątpliwości.

Prelekcja Alberto Revelli na CONFidence

Na stronie konferencji CONFidence zostały udostępnione materiały z zeszłorocznej edycji. Wśród nich dostępna jest prelekcja Alberto Revelli na temat SQL Injection w środowisku Microsoft SQL Server. Prezentuje on jak przejąć pełną kontrolę nad systemem korzystając z wbudowanych procedur składowanych.

JavaScript / CSS fingerprinting

Ogólnie przyjmuje się, że tworząc stronę mamy bardzo ograniczone możliwości pobierania informacji na temat użytkowników. Możemy pobrać adres IP, nazwę przeglądarki, systemu operacyjnego, rozdzielczość ekranu i jeszcze kilka innych mało wartościowych informacji, które w większości mogą zostać łatwo zmodyfikowane. Istnieje jeszcze kilka stosunkowo mało znanych sztuczek, które umożliwiają pobranie dodatkowych informacji na temat użytkowników naszej […]

Niebezpieczeństwo UserScripts

UserScripts czy tez UserJS są małymi skryptami JavaScript ładowanymi do przeglądarki. Umożliwiają one zmianę w locie modelu DOM dowolnej strony. Powyższy opis może wydawać się niejasny, dlatego posłużę się przykładem w celu zademonstrowania zasady ich działania.

Blind SQL Injection

Blind SQL Injection jest odmianą ataku SQL Injection charakteryzującą się brakiem pokazywania błędów w zapytaniach SQL. Wyłączenie pokazywania błędów przez programistę / administratora „podnosi” bezpieczeństwo aplikacji, jednak nie eliminuje problemu. Modyfikacja zapytania jest nadal możliwa, staje się jedynie trudniejsza z braku wglądu w zapytania oraz błędy SQL.

Autologowanie

Wraz z wdrożeniem systemu logowania następuje pytanie czy dać użytkownikom możliwość zautomatyzowania tego procesu, dzięki czemu za każdym razem nie będą musieli podawać swojego loginu i hasła. Głównym przeciwwskazaniem takiej funkcjonalności jest wrażliwość danych jakie są dostępne po zalogowaniu.

Bezpieczne logowanie

Pierwszą czynnością podczas logowania (zaraz po filtracji danych) jest sprawdzenie czy podany użytkownik istnieje w naszym systemie. Z zasady odbywa się to za pośrednictwem zapytania SELECT, które wyszukuje użytkownika na podstawie podanych przez niego danych.

Podstawowe zasady bezpieczeństwa.

Poniżej kilka podstawowych zasad, które wszyscy znają, ale często się o nich zapomina :-) Traktuj użytkownika jako wroga. Nie ufaj danym przesyłanym do aplikacji, wszelkie przychodzące dane należy traktować jako niebezpieczne. Sprawdzaj dane przychodzące. Sprawdzaj czy przesyłane dane są odpowiedniego typu, czy maja odpowiednia długość i czy pasują do wzorca. Nie korzystaj z tablic superglobalnych. […]