Jump to content
php.lv forumi

drošība


renathy

Recommended Posts

1) Kā nodrošināties pret sekojošo: caur get-u padod kaut ko, ko es pēc tam lieku SELECTā where vai citās daļās un es negribu, lai varētu ierakstīt iekš URLa kko, kas var izbojāt datu bāzi.

2) Kā nodrošināties, lai lietotājs formās, ko pēc tam saglabāju datu bāzē, nevarētu ierakstīt kko sliktu?

 

Vai ir vēl kādi drošības pasākumi, kas saisīti ar lietotāju ļauno darbību?

Link to comment
Share on other sites

vienkārši: kad datus izmanto HTML elementos (selektos, utt) izmanto htmlspecialchars() - tas pasargās no tā, ka cilvis mēģina bakstīt kaut ko tādu: index.php?param=><script>alert('hello');</script>

ieliekot iekš DB: izmanto mysql_real_escape_string(), lai nodrošinātos pret to, ka cilvis baksta kaut ko tādu kā ' OR 1=1--

kad datus velc ārā no DB: tāpat izmanto stripslashes(htmlspecialchars($teksts)); vai vienkārši htmlspecialchars();

 

papildus noderīga lieta, ar ko pārbaudīt komentārus pret spamu - jo spameri sarodas ar laiku:

function contains_badwords($string){
$string = strtolower($string);
$bads = array('viagra','cialis','porn','lesbian','gay','<a href='); // sliktie vārdi
foreach($bads as $badword){
	if (false !== strpos( $string, $badword)){
		return true;
	}
}
return false;				
}

Lietojums:

if (contains_badwords($_POST['komentars'])){
die('ej ka tu nafik, spameri!');
}

 

un vispār - sveika, renathy :)

Edited by usver
Link to comment
Share on other sites

  • 7 months later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...