Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Próba zabeczpieczenia przed SQl injection [ MODYFIKACJA SKRYPTU]
Forum PHP.pl > Forum > PHP
djatturo
Czy może mi ktos pomóc z tym skryptem, tak by zabezpieczyć baze przed wstrzykiwaniem danych SQl Injection ?

Formularz

ciągle mi się przez to włamują.. ręce już opadają...
greycoffey
Nie, nikomu nie chce się sciągać z Rapidshare twojego formularza, ani pisać ci gotowego kodu.
djatturo
Cytat(greycoffey @ 23.04.2012, 21:31:00 ) *
Nie, nikomu nie chce się sciągać z Rapidshare twojego formularza, ani pisać ci gotowego kodu.


Dziękuję za szczerośc, przynajmniej prosto w oczy a nie zaplecami.
To też sie ceni.
pyro
Cytat(djatturo @ 23.04.2012, 22:32:12 ) *
Dziękuję za szczerośc, przynajmniej prosto w oczy a nie zaplecami.
To też sie ceni.


No to wypadałoby wkleić tutaj kod i pokazać co zrobiłeś albo jakie masz pomysły.
greycoffey
Gdybyś wkleił kod w temacie, w odpowiednim znaczniku, to pewnie bym coś zauważył przez krótkie psojrzenie przewijając stronę, ale nie będę ściągał z RapidShare pliku, na wspólnym IP z 100 ludźmi jest ciągle zajęte.
Pewnie przyda ci się funkcja mysql_real_escape_string, oraz w przypadku wartości numerycznych rzutowanie na integer.
djatturo
Cytat(greycoffey @ 23.04.2012, 21:50:00 ) *
Gdybyś wkleił kod w temacie, w odpowiednim znaczniku, to pewnie bym coś zauważył przez krótkie psojrzenie przewijając stronę, ale nie będę ściągał z RapidShare pliku, na wspólnym IP z 100 ludźmi jest ciągle zajęte.
Pewnie przyda ci się funkcja mysql_real_escape_string, oraz w przypadku wartości numerycznych rzutowanie na integer.


Dopiero uczę sie PHP smile.gif

CODE
<br><a href="java script:history.go(-1)"><< WRÓĆ</font></table>
</center>
</div><div class="boxVerticalFooter"></div>
</body>
</html>
');
}

// encrypt the password
//$_POST['pass'] = md5($_POST['pass']);
if (!get_magic_quotes_gpc()) {
$_POST['pass'] = addslashes($_POST['pass']);
$_POST['username'] = addslashes($_POST['username']);
$_POST['email'] = addslashes($_POST['email']);
$_POST['email2'] = addslashes($_POST['email2']);
$_POST['psecreta'] = addslashes($_POST['psecreta']);
$_POST['rsecreta'] = addslashes($_POST['rsecreta']);
}
$account = $_POST['username'];
$password = $_POST['pass'];
$email = $_POST['email'];
$psecreta = $_POST['psecreta'];
$rsecreta = $_POST['rsecreta'];

// insert it into the database
$insert = "INSERT INTO td_Account (AccountName, Password, Email, CashPoint,Psecreta,Rsecreta) VALUES ('$account','$password','$email','200','$psecreta','$rsecreta')";
$add_member = mssql_query($insert);


?>
<body scroll="no" oncontextmenu="return false" ondragstart="return false" onselectstart="return false" onload="startCountdown();">
<div id="launcher" style="background: url(/launcher/theme/img/theme/BG_launcher_bg_winter.jpg) #000 no-repeat;">
<div id="content">
<br><br><br><br><br><br>
<div id="col-right">
<div class="boxVerticalHeader"></div>
<div id="news">
<table width="100%" border="0" cellspacing="10" cellpadding="10">
<tr><td><font color=white><center><br><br><br><br>
<h1>OK!<br> </h1><br><img src="theme/img/seperator.png"><br><br><br>

Zostales <font color=green>pomyslnie</font> zarejestrowany!<br>
Teraz mozesz sie zalogowac.<br><br><br>
<img src="theme/img/seperator.png"><br>
</div><br>
<br><a href="java script:history.go(-1)"><< WRÓĆ</a></font>

</center></td>
</tr>
</table>
</div><div class="boxVerticalFooter"></div>

<?php
}
else
{
?>

<body scroll="no" oncontextmenu="return false" ondragstart="return false" onselectstart="return false" onload="startCountdown();">
<div id="launcher" style="background: url(/launcher/theme/img/theme/BG_launcher_bg_winter.jpg) #000 no-repeat;">
<div id="content">
<br><br><br><br><br><br>
<div id="col-right">
<div class="boxVerticalHeader"></div>
<div id="news">

<table>


<font color=white>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">

<table>
<tr><td>

<table width=300 border="0" cellpadding="0" cellspacing="5" style="filter : alpha(opacity=70);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7">
<tr>
<td width=100><div align="left" class="style8"><span class="style1" style="font-family : Comic Sans MS,sans-serif; text-shadow: 1px 1px 1px white;color : white"><strong><font color=white><div align=center>Login:</div></font></strong></span></div></td>
<td><input name="username" type="text" id="username" size="20" style="border:1px solid #ca680b : alpha(opacity=80);font-family : Comic Sans MS,sans-serif; text-align: center; color : red;filter : alpha(opacity=25);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;"/></td>
</tr>
<tr>
<td width=100><div align="left" class="style8"><span style="font-family : Comic Sans MS,sans-serif; text-shadow: 1px 1px 1px #ca680b;"><font color=white><div align=center>Hasło:</div></font></span></div></td>
<td><input name="pass" type="password" id="pass" size="20" style="border:1px solid #ca680b : alpha(opacity=80);font-family : Comic Sans MS,sans-serif; text-align: center; color : red;filter : alpha(opacity=25);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;"/></td>
</tr>
<tr>
<td width=100><div align="left" class="style8"><span style="font-family : Comic Sans MS,sans-serif; color : white; text-shadow: 1px 1px 1px #ca680b;"><font color=white><div align=center>Potwierdź hasło: </div></font></span></div></td>
<td><input name="pass2" type="password" id="pass2" size="20" style="border:1px solid #ca680b : alpha(opacity=80);font-family : Comic Sans MS,sans-serif; text-align: center; color : red;filter : alpha(opacity=25);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;"/></td>
</tr>
<tr>
<td width=100><div align="left" class="style8"><span class="style1" style="font-family : Comic Sans MS,sans-serif; color : white; text-shadow: 1px 1px 1px #ca680b;"><font color=white><div align=center>E-Mail:</div></font>
</span>
</div>
<div align="center" ></div></td>
<td><input name="email" type="text" id="email" size="20" style="border:1px solid #ca680b : alpha(opacity=80);font-family : Comic Sans MS,sans-serif; text-align: center; color : red;filter : alpha(opacity=25);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;"/></td>
</tr>
<tr>
<td width=100><div align="center" class="style9" >
<div align="center"><font color=white><div align=center style="font-family : Comic Sans MS,sans-serif; color : white; text-shadow: 1px 1px 1px #ca680b;">Potwierdź E-Mail:</div></font></div>
</div></td>
<td><input name="email2" type="text" id="email2" size="20" style="border:1px solid #ca680b : alpha(opacity=80);font-family : Comic Sans MS,sans-serif; text-align: center; color : red;filter : alpha(opacity=25);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;"/></td>
</tr>
<tr>
<td width=100><div align="center" class="style9" >
<div align="left"><font color=white><div align=center style="font-family : Comic Sans MS,sans-serif; color : white; text-shadow: 1px 1px 1px #ca680b;">Pytanie:</div></font></div>
</div></td>
<td><input name="psecreta" type="text" id="psecreta" size="20" style="border:1px solid #ca680b : alpha(opacity=80);font-family : Comic Sans MS,sans-serif; text-align: center; color : red;filter : alpha(opacity=25);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;"/></td>
</tr>
<tr>
<td width=100><div align="center" class="style9" >
<div align="left"><font color=white><div align=center style="font-family : Comic Sans MS,sans-serif; color : white; text-shadow: 1px 1px 1px #ca680b;">Odpowiedź:</div></font></div>
</div></td>
<td><input name="rsecreta" type="text" id="rsecreta" size="20" style="border:1px solid #ca680b : alpha(opacity=80);font-family : Comic Sans MS,sans-serif; text-align: center; color : red;filter : alpha(opacity=25);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;"/></td>
</tr>
</table>
<table border="0" align="center" cellpadding="0" cellspacing="8" style="filter : alpha(opacity=70);-khtml-opacity : 0.7;-moz-opacity : 0.7;opacity: 0.7;">
<img src="theme/img/seperator.png">

<tr>
<td>
<u>
<a href=http://nazwadomeny.pl/launcher/launcher.php style="font-family : Comic Sans MS,sans-serif; text-align: center; color : #fff; text-shadow: 1px 1px 1px #ca680b;"><< Wróć do strony głównej</a>
</u>
</td>
<td colspan="2">
<div align="right">
<input style="border:1px solid #fff; background-image : url(bg.jpg);font-family : Comic Sans MS,sans-serif; text-align: center; color : #fff; text-shadow: 1px 1px 1px #ca680b;" name="submit" type="submit" id="submit" value="Zarejestruj" />
</div></td>
</tr>
</table>

</td></tr></table>
</form>
</font>
</div>
<div class="boxVerticalFooter"></div>
</body>
</html>

<?php
}
?>
pyro
Cytat(djatturo @ 23.04.2012, 22:53:23 ) *
Probowalem wkleic ale skrypt jest za długi, btw.. nie wiem o czym do mnie mówisz. Dopiero uczę sie PHP smile.gif
2 KB na rapidzie to chyba nie problem..

Powiedz , gdzie mam umieścic skrypt a wyśle go tam natychmiast


Jak skrypt jest na tyle długi, że nie mieści się na forum, a sam nie wiesz zupełnie co robić, to raczej nikomu nie będzie się chciało analizować za darmo całego tego kodu. Forum służy bardziej do nakierowywania na odpowiedzi i sugerowaniu sposobów na rozwiązanie poszczególnych problemów, a nie "zróbcie mi to".
djatturo
Cytat(pyro @ 23.04.2012, 21:57:31 ) *
Jak skrypt jest na tyle długi, że nie mieści się na forum, a sam nie wiesz zupełnie co robić, to raczej nikomu nie będzie się chciało analizować za darmo całego tego kodu. Forum służy bardziej do nakierowywania na odpowiedzi i sugerowaniu sposobów na rozwiązanie poszczególnych problemów, a nie "zróbcie mi to".


znalazłęm codebox, juz wkleiłem
gargamel
No to jak się dopiero PHP uczysz to nie ucz się takiego dziadostwa jakim jest mysql_query smile.gif

Zamiast tego używa się PDO

Tu bardzo przystępny tutorial: http://www.phpeveryday.com/articles/PDO-Pr...ement-P552.html
djatturo
Cytat(gargamel @ 23.04.2012, 22:17:53 ) *
No to jak się dopiero PHP uczysz to nie ucz się takiego dziadostwa jakim jest mysql_query smile.gif

Zamiast tego używa się PDO

Tu bardzo przystępny tutorial: http://www.phpeveryday.com/articles/PDO-Pr...ement-P552.html



dziękuję, nadal nic z tego nie rozumiem sad.gif
gargamel
Ale czego nie rozumiesz? mysql_query jest starociem, którego używanie mści się między innymi problemami z jakimi się borykasz. Używaj zamiast tego PDO. Tutorial dostałeś. Przeczytaj krok po kroku - jak się łączyć z bazą, jak wykonywać zapytania itd... ( na dole masz spis treści ).
xxdrago
A ja proponuje nie męczyć kolegi PDO, w sumie lepiej jest używać, ale na początkującego niech robi jak dla niego lepiej z czasem, zacznie sam używać PDO, w większych projektach.

Mała lektura:
http://pl.wikipedia.org/wiki/SQL_injection
http://webhosting.pl/SQL.Injection..Jak.ha...zenia.stron.WWW.

Wystarczy, każdą zmienna którą dajesz do bazy flirtować, i nie będzie problemu.

Poczytaj, zrozum, i będziesz wiedzieć co i jak smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.