Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: Prisijungimas su saugos kodo įvedimu

Parašė BloodKiller· 2008 Lie. 13 01:07:37
#1

Gerai, per sausainėlius bruteforce ataka neįmanoma. Bet juk galima surinkti visų vartotojų vardus ir tuomet mėginti jungtis jų vardais ir spėjamais slaptažodžiais. Taip būtų sukurta kartu ir dalies vartotojų special_id surinkimo sistema. Bet ar nuo to apsisaugoti įmanoma? Žinoma, kad taip! Tiesiog tereikia sukurti sistemą, kuri "lieptų" vartotojui įvesti saugos kodą prieš jungiantis. Taigi, pradėkime kurti saugesnį rytojų...

Visų pirma, ką jūs turite padaryti, tai atsidaryti login.php failą (ne visi jungiasi per "Prisijungti" panelę :D).

Susirandate login.php štai ką:
echo "<div align='center'>
<form name='loginform' method='post' action='".FUSION_SELF."'>
".$locale['061']."<br>
<input type='text' name='user_name' class='textbox' style='width:100px'><br>
".$locale['062']."<br>
<input type='password' name='user_pass' class='textbox' style='width:100px'><br>
<input type='checkbox' name='remember_me' value='y'>".$locale['063']."<br><br>
<input type='submit' name='login' value='Login' class='button'><br>
</form>
<br>
</div>\n";



ir visa tai keičiate į:
iinclude LOCALE.LOCALESET."register.php";
echo "<div align='center'>
<form name='loginform' method='post' action='".FUSION_SELF."'>
".$locale['061']."<br>
<input type='text' name='user_name' class='textbox' style='width:100px'><br>
".$locale['062']."<br>
<input type='password' name='user_pass' class='textbox' style='width:100px'><br>
<input type='checkbox' name='remember_me' value='y'>".$locale['063']."<br><br>
<input type='submit' name='login' value='Login' class='button'><br>
<table align='center'>
<tr><td class='tbl'>".$locale['504']."</td><td>".make_captcha()."</td></tr>
<tr><td class='tbl'>".$locale['505']."</td><td class='tbl'><input type='text' name='captcha_code' class='textbox' style='width:100px'></td></tr>
</table>
</form>
</div>\n";




Dabar atsidarote infusions/user_info_panel/user_info_panel.php ir susirandate tai:
echo "<div align='center'>
<form name='loginform' method='post' action='".FUSION_SELF."'>
".$locale['061']."<br>
<input type='text' name='user_name' class='textbox' style='width:100px'><br>
".$locale['062']."<br>
<input type='password' name='user_pass' class='textbox' style='width:100px'><br>
<input type='checkbox' name='remember_me' value='y' title='".$locale['063']."' style='vertical-align:middle;'>
<input type='submit' name='login' value='".$locale['064']."' class='button'><br>
</form>
<br>\n";



Visa tai keičiate į
include LOCALE.LOCALESET."register.php";
echo "<div align='center'>
<form name='loginform' method='post' action='".FUSION_SELF."'>
".$locale['061']."<br>
<input type='text' name='user_name' class='textbox' style='width:100px'><br>
".$locale['062']."<br>
<input type='password' name='user_pass' class='textbox' style='width:100px'><br>
<input type='checkbox' name='remember_me' value='y' title='".$locale['063']."' style='vertical-align:middle;'>
<input type='submit' name='login' value='".$locale['064']."' class='button'><br>
<table align='center'>
<tr><td class='tbl'>".$locale['504']."</td><td>".make_captcha()."</td></tr>
<tr><td class='tbl'>".$locale['505']."</td><td class='tbl'><input type='text' name='captcha_code' class='textbox' style='width:100px'></td></tr>
</table>
</form>
<br>\n";




Na o dabar reikės atsidaryti maincore.php ir susirasti šią eilutę:
if (isset($_POST['login'])) {
Po to netoliese surandate if (dbrows($result) != 0) { ir tai pakeičiate į:
if (dbrows($result) != 0 && check_captcha($_POST['captcha_encode'],$_POST['captcha_code'])) {




Štai ir viskas. Dabar visi vartotojai turės įvesti saugos kodą, jei norės prisijungti prie jūsų tinklapio. Jei kodas bus neteisingas, rodys, jog neteisingas vardas arba slaptažodis, t.y., neprijungs vartotojo prie tinklapio. :)

Parašė ramon· 2008 Lie. 13 01:07:05
#2

Mldc :];)

Parašė BloodKiller· 2008 Lie. 13 01:07:10
#3

Tiesa, pamiršau paminėti vieną smulkmenėlę - šis captcha sutaps su tuo, kuris yra naudojamas registracijoje. Tai yra, jeigu bus įjungta tekstinė saugos kodo sistema, teks vesti tekstą, o ne nurašinėti nuo paveikslėlio raides. Tekstinę captcha gan nesunku apeiti. :D

Redagavo BloodKiller· 2008 Lie. 13 01:07:47

Parašė Kelmas· 2008 Lie. 13 09:07:19
#4

Labai pravers dėkingas labai :)
P.S Pas manęs login.php nėr :)

Parašė Jaibogu· 2008 Lie. 13 10:07:41
#5

nu paglaiu kuriau kuriua temas kaip pass padaryti ir pagaliua kaz kas yrdejo dekui :)

Parašė MAnjack· 2008 Lie. 13 10:07:34
#6

Blood, kai buvai dingęs, tai gal apsaugas kūrei? :D Šiaip nieko tokia, kažką tokio ir aš gavojau pasidaryt, bet paskui sugavojau, kad nervins vedinėt tą saugos kodą :D

Parašė DvB· 2008 Lie. 13 10:07:40
#7

Siūlyčiau į straipsnius įmest ;)