Pokaż wyniki 1 do 6 z 6

Temat: Księga gości 0.3 by KESS jak się do niej dobrać?

  1. #1
    Zarejestrowany
    Jun 2009
    Postów
    2

    Domyślnie Księga gości 0.3 by KESS jak się do niej dobrać?

    Witam!
    Chciałbym się dobrać do skryptu księgi gości 0.3 by KESS. Dodatek ten jest oparty na plikach tekstowych. Wpisy docelowo występują w pliku base/base.szk, konfiguracja w include/config.php. Wydaje mi się, że jest podatna na wstrzyknięcie kodu
    Kod html:
    // dodawanie wpisu
        case "add":
    
    ?>
    <form name="ksiega" onsubmit="return Validate();" method="post" action="?kg=save">
    <table cellpadding="0" cellspacing="0" width="600" class="border" style="text-align: left;">
    <tr>
         <td width="100%" colspan="2" class="nag2">Wpisz się do Księgi go&#182;ci</td>
    </tr>
    <tr>
         <td width="40%">Imię i nazwisko lub nick: <span class="gw">*</span></td>
         <td width="60%"><input type="text" name="nick" style="width: 100%;" />
    </td>
    </tr>
    <tr>
         <td width="40%">Adres e-mail:</td>
         <td width="60%"><input type="text" name="e_mail" style="width: 100%;" />
    </td>
    </tr>
    <tr>
         <td width="40%">Sk&#177;d:</td>
         <td width="60%"><input type="text" name="skad" style="width: 100%;" />
    </td>
    </tr>
    <tr>
         <td width="40%">Gadu-Gadu:</td>
         <td width="60%"><input type="text" name="gg" style="width: 50%;" />
    </td>
    </tr>
    <tr>
         <td width="40%">Tlen: <span class="szary">(tylko identyfikator)</span></td>
         <td width="60%"><input type="text" name="tlen" style="width: 50%;" />
    </td>
    </tr>
    <tr>
         <td width="40%">Adres URL:</td>
         <td width="60%"><input type="text" name="strona" style="width: 100%" onclick="execCommand('CreateLink')" />
    </td>
    </tr>
    <tr>
         <td width="40%" valign="top">Tre&#182;ć wpisu: <span class="gw">*</span> <span class="szary">(max. 500 znaków)</span>
    <?php include "$path_ks/include/emotikony.php"; ?>
    	 </td>
         <td width="60%" valign="top"><textarea name="wpis" style="width: 100%; height: 150px;" onkeyup="zliczaj_znaki()" onkeypress="zliczaj_znaki()" ></textarea></td>
    </tr>
    <tr>
    		<td width="40%"><span class="gw">*</span><span class="mala"> - pola obowi&#177;zkowe</span></td>
    		<td width="60%"><small> pozostało do wykorzystania <span id="znak" class="gw">500</span> znaków</small></td></tr>	 
    <tr>
         <td width="40%">&nbsp;</td>
         <td width="60%"><input class="button" type="submit" value="Dodaj" /> <input class="button" type="reset" value="Od nowa" />
    </td>
    </tr>
    </table>
    </form>
    Oto fragment kodu odpowiedzialny za dodawanie wpisu. Jeśli jest podatna to proszę mi pomóc, jaki wstrzyknąć kod lub zaproponować inne rozwiązanie.

    Z góry dziękuję, multiinstrumentalista

  2. #2
    Avatar Ormi
    Ormi jest offline %x-%x-%x-%n
    Zarejestrowany
    Jul 2008
    Skąd
    Za twoimi plecami
    Postów
    351

    Domyślnie

    o_O Ciekawe jak na podstawie kodu html stwierdzić czy skrypt zawiera błędy...
    Black Coders | Hacking, Kernel, Linux, Operating Systems, Programming
    I otworzyła studnię Czeluści,
    a dym się uniósł ze studni jak dym z wielkiego pieca,
    i od dymu zaćmiło się słońce i powietrze.
    A z dymu wyszła szarańcza na ziemię,
    i dano jej moc jaką mają ziemskie skorpiony.
    (...)
    I dano jej nakaz aby nie zabijała,
    lecz aby przez pięć miesięcy cierpieli katusze...

  3. #3
    Zarejestrowany
    May 2007
    Skąd
    Kraków
    Postów
    371

    Domyślnie

    zarzuc po
    Kod php:
    case 'save'
    czy czymś takim... (wnioskuje z tego kawalka kodu)

  4. #4
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    Hmmm jakos jeszcze nie widzialem aby kawalek html'a powiedzial czy kod jest podatny czy nie... no ale zawsze moge sie mylic
    ctrl-alt-del.cc - soft reset site for IT admins and other staff :-)

  5. #5
    Zarejestrowany
    Jun 2009
    Postów
    2

    Domyślnie

    Zapomniałem dodać tego save
    Kod:
    // zapis wpisu
    case "save":
    
    $nick = trim($_POST['nick']);
    $e_mail = trim($_POST['e_mail']);
    $skad = trim($_POST['skad']);
    $gg = trim($_POST['gg']);
    $tlen = trim($_POST['tlen']);
    $strona = trim($_POST['strona']);
    $wpis = trim($_POST['wpis']);
    
    
    // sprawdzenie Tlena
    if(!empty($tlen)) {
        $spr_tlen = substr($tlen, 0, strpos($tlen, '@'));
        if ($spr_tlen != "") {
            $tlen = $spr_tlen;
        }
    }
    
    
    // spradzenie GG
    if(!empty($gg)) {
        if (!eregi("^[0-9]{1,10}$", $gg)) {
            $error1 = "<span class=\"blad\">Nr Gadu-Gadu powinien zawierać tylko cyfry!</span><br />";
            $s_gg = 1;
        }
    }
    
    
    //sprawdzenie email
    if(!empty($e_mail)) {
        if(!sprawdz_email($e_mail)) {
            $error2 =  "<span class=\"blad\">Błędny adres e-mail!</span><br />";
            $s_ma = 1;
        }
    }
    
    
    // sprawdzenie URL
    if(!empty($strona)) {
        
        $parse = parse_url($strona);
        if(empty($parse['scheme'])) $strona = "http://$strona";
    }
    
    
    if(!empty($wpis)) {
        
        // zabezpieczenie przed enterem
        if(eregi("\r\n\r\n\r\n\r\n", $wpis)) {
            $error3 = "Nie używaj tak często entera!";
            $s_ent = 1;
        }
        
        // weryfikacja długo&#182;ci wpisu
        if (strlen($wpis) > 500) {
            $error4 = "<span class=\"blad\">Przekroczono dozwolon&#177; ilo&#182;ć znaków przeznaczon&#177; na wpis!</span>";
            $s_len = 1;
        }
    }
    
    if($s_gg == 1 or $s_ma == 1 or $s_ent == 1 or $s_len == 1 or $zezwalam <> 1) {
        
        $error = $error1.$error2.$error3.$error4.$error_czas;
        
        kom("Wyst&#177;pił bł&#177;d przetwarzania formularza",$error);
    }
    else {
        
        $nick = htmlspecialchars($nick);
        $e_mail = htmlspecialchars($e_mail);
        $skad = htmlspecialchars($skad);
        $gg = htmlspecialchars($gg);
        $tlen = htmlspecialchars($tlen);
        $strona = htmlspecialchars($strona);
        $wpis = htmlspecialchars($wpis);
        
        $data = time();
        $ip = getenv("REMOTE_ADDR");
        
        $wpis = ereg_replace("\r","",$wpis);
        $wpis = ereg_replace("\n"," ",$wpis);
        
        // funkcja "cenzora" napisana przez Łukasza Budnika
        include "$path_ks/include/cenzor.php";
        $wpis = cenzor($wpis,3);
        $nick = cenzor($nick,3);
        $skad = cenzor($skad,3);
        $e_mail = cenzor($e_mail,3);
        $tlen = cenzor($tlen,3);
        $strona = cenzor($strona,3);
        // koniec cenzora
        
        if($akcept == 1) $ak = 0;
        elseif($akcept == 0) $ak = 1;
        
        $dane = "$nick`$e_mail`$gg`$tlen`$strona`$wpis`$data`$ip`$skad`$ak`\n";
        $dane = addslashes($dane);
        
        $file = "$path_ks/$katalog/$wpisy$rozsz";
        
        $fp = @fopen($file, "a");
        
        // komunikat w razie niepowodzenia
        if(!$fp) {
            kom("UWAGA!!!","Nie można otworzyć pliku $file w trybie do zapisu!<br />Musisz nadać mu prawa <a href=\"http://www.kess.com.pl/?sid=40&p=inne&pid=6\">chmod 666</a>");
            exit;
        }
        
        rewind($fp);
        flock($fp, 2);
        fwrite($fp, $dane);
        flock($fp, 3);
        fclose($fp);
        
        @setcookie("nick", $_POST['nick'], time()+300);
        
        if(function_exists('mail')) {
            
            // mail do wpisujacego
            if($akcept == 0) {
                $wysylka = "Dziękuję za wpis do mojej Księgi go&#182;ci!\nZapraszam ponownie!\n\n$s_adres";
            }
            else {
                $wysylka = "Dziękuję za wpis do mojej Księgi go&#182;ci!\nWpis zostanie poddany weryfikacji, jeżeli się nadaje zostanie wy&#182;wietlony.\nZapraszam ponownie!\n\n$s_adres";
            }
            $header = "From: Księga go&#182;ci <$tw_email>";
            $m1 = @mail($e_mail,"Dzieki za wpis!",$wysylka,$header);
            if(!$m1) $error5 = "<br /><span class=\"blad\">Nie udało się wysłać potwierdzenia wpisu!</span>";
            
            // mail do admina	
            $wysylka1 = "Dokonano wpisu do Księgi go&#182;ci\nKto?: $nick\nEmail: $e_mail\nTre&#182;ć wpisu: $wpis\nIP: $ip\nData: ".data_pl($data);
            $header1 = "From: $nick <$e_mail>";
            $m2 = @mail($tw_email,"Wpis do Ksiegi gosci",$wysylka1,$header1);
            if(!$m2) $error6 = "<br /><span class=\"blad\">Nie udało się wysłać wiadomo&#182;ci do admina!</span>";
        }
        
        if($akcept == 0) {
            // komunikat		
            $nick = stripslashes($nick);
            $txt2 = "<strong>$nick</strong> dziękuję za wpis do Księgi go&#182;ci!".$error5.$error6;
            kom("Dokonano wpisu",$txt2);
        }
        else {
            // komunikat		
            $nick = stripslashes($nick);
            $txt2 = "<strong>$nick</strong> dziękuję za wpis do Księgi go&#182;ci!<br />Wpis pojawi się w księdze dopiero po akceptacji admina.".$error5.$error6;
            kom("Dokonano wpisu",$txt2);
        }
    }
    
    break;
    }

  6. #6
    Avatar Ormi
    Ormi jest offline %x-%x-%x-%n
    Zarejestrowany
    Jul 2008
    Skąd
    Za twoimi plecami
    Postów
    351

    Domyślnie

    Cóż, ja tu błędu nie widzę... Może ktoś inny znajdzie?
    Black Coders | Hacking, Kernel, Linux, Operating Systems, Programming
    I otworzyła studnię Czeluści,
    a dym się uniósł ze studni jak dym z wielkiego pieca,
    i od dymu zaćmiło się słońce i powietrze.
    A z dymu wyszła szarańcza na ziemię,
    i dano jej moc jaką mają ziemskie skorpiony.
    (...)
    I dano jej nakaz aby nie zabijała,
    lecz aby przez pięć miesięcy cierpieli katusze...

Podobne wątki

  1. Jak się zabezpieczyć?
    By Scourer in forum Wirusy/Konie trojańskie
    Odpowiedzi: 8
    Autor: 04-22-2009, 13:19
  2. jak się lenić?
    By Citko0 in forum /dev/null
    Odpowiedzi: 2
    Autor: 10-17-2008, 18:10
  3. Jak włamać się na czyjeś gg?
    By sidh-mor in forum /dev/null
    Odpowiedzi: 3
    Autor: 09-27-2008, 09:26
  4. I-BOOK księga gości(ocena+audyt)
    By ironwall in forum PHP/CGI/ASP/JSP/J2EE
    Odpowiedzi: 22
    Autor: 06-25-2008, 00:28
  5. Wpis do księgi gości
    By _tomek76_ in forum Hacking
    Odpowiedzi: 7
    Autor: 09-24-2007, 18:29

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

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52