Post, Get, Request ve Cookie Değerleri Temizleme Sınıfı

<?php
class temizle {
	function temizle() {
		$this->temizleCookie();
		$this->temizleGet();
		$this->temizleRequest();
		$this->temizlePost();
	}
	function temizlePost() {
		foreach($_POST as $anahtar=>$deger) {
			$_POST[$anahtar] = addslashes($deger);
		}
	}
	function temizleGet() {
		foreach($_GET as $anahtar=>$deger) {
			$_GET[$anahtar] = addslashes($deger);
		}
	}
	function temizleRequest() {
		foreach($_REQUEST as $anahtar=>$deger) {
			$_REQUEST[$anahtar] = addslashes($deger);
		}
	}
	function temizleCookie() {
		foreach($_COOKIE as $anahtar=>$deger) {
			$_COOKIE[$anahtar] = addslashes($deger);
		}
	}
}
$_POST = array('isim'=>"Ahmet'in", 'deger'=>"Kalem'i");
$_GET = array('id'=>"nerde'");
$_REQUEST = array('deger'=>'test"');
$_COOKIE = array('sifre'=>"'osman'in_sifresi");
echo '<fieldset><legend>Eski Hali</legend>';
echo 'POST: ';
print_r($_POST);
echo '<br>GET: ';
print_r($_GET);
echo '<br>REQUEST: ';
print_r($_REQUEST);
echo '<br>COOKIE: ';
print_r($_COOKIE);
echo '</fieldset>';
$temizle =new temizle();
echo '<fieldset><legend>Yeni Hali</legend>';
echo 'POST: ';
print_r($_POST);
echo '<br>GET: ';
print_r($_GET);
echo '<br>REQUEST: ';
print_r($_REQUEST);
echo '<br>COOKIE: ';
print_r($_COOKIE);
echo '</fieldset>';
?>

Çıktısı

---Eski Hali---
POST: Array ( [isim] => Ahmet'in [deger] => Kalem'i ) 
GET: Array ( [id] => nerde' ) 
REQUEST: Array ( [deger] => test" ) 
COOKIE: Array ( [sifre] => 'osman'in_sifresi )
---Yeni Hali---
POST: Array ( [isim] => Ahmet\'in [deger] => Kalem\'i ) 
GET: Array ( [id] => nerde\' ) 
REQUEST: Array ( [deger] => test\" ) 
COOKIE: Array ( [sifre] => \'osman\'in_sifresi )

 

Kullanıcı Tanımlı MD5 Şifreleme

<?php
define("ktMD5_CODE","GuvenliKodBuraya"); //Your eMD5 server-side code
function ktMD5($metin){
	return ktMD5::hash($metin);
}
class ktMD5 {
	static function ikili($metin){
		$cikti=null;
		$i=0;while($i < strlen($metin)){
			$cikti .= "+". str_pad(decbin(ord(substr($metin,$i++,1))), 8, "0", STR_PAD_LEFT);
		}
		return $cikti;
	}
	static function dogrula($metin1,$metin2){ 
		if($metin1 != "+" && $metin2 != "+"){ 
			if($metin1 xor $metin2){
				return "1"; 
			}else{
				return "0"; 
			} 
		}else{
			return "+"; 
		} 
	}
	static function hash($metin){
		if(!defined("ktMD5_CODE")){exit("<b>hata: </b> ktMD5_code tanımlanmadı");}
		$metin = trim($metin);$s = md5(ktMD5_CODE);$metin = md5($metin);
		$i=0;while($i != 32){$dizi_metin[] = substr($metin,$i,8);$i=$i+8;}
		$i=0;while($i != 32){$dizi_s[] = substr($s,$i,8);$i=$i+8;}
		$metin1 = ktMD5::ikili($dizi_s[0].$dizi_metin[1].$dizi_s[2].$dizi_metin[3]);
		$metin2 = ktMD5::ikili($dizi_metin[0].$dizi_s[1].$dizi_metin[2].$dizi_s[3]);
		$kombin=null;
		$e=0;
		while($e < strlen($metin1)){ 
			$kombin .= ktMD5::dogrula(substr($metin1,$e,1),substr($metin2,$e,1)); 
			$e++; 
		}
		$cikti = md5($kombin);
		return $cikti;
	}
}
echo MD5("1234568");
echo "<br>";
echo ktMD5("1234568");
?>

Çıktısı

fe743d8d97aa7dfc6c93ccdc2e749513
e32f8d4f9b769346a74fe8d1a82c5e56

 

SQL Enjeksiyon Kaldırma

<?php
class sql{
	public function enjeksiyonKaldir($string){
		$injections = array(">", "<", "=", "'", "?", "\\", "/", 
						"&", "|","-", "+", "%", "$", "#", "*",
						"or", "and", "drop", "insert", "rename", "select");
		$string = str_replace($injections, "", htmlentities(strtolower($string),ENT_QUOTES,"UTF-8"));
		return $string;
	}
}
$s=new sql;
echo $s->enjeksiyonKaldir("''Or'='Or''");
echo "<br>";
echo $s->enjeksiyonKaldir("anything' OR 'x'='x");
echo "<br>";
echo $s->enjeksiyonKaldir("1'or'1'='1");
echo "<br>";
echo $s->enjeksiyonKaldir("' or 1=1 or ''='");
echo "<br>";
echo $s->enjeksiyonKaldir("\" or 1=1 or \"\"=\"");
echo "<br>";
echo $s->enjeksiyonKaldir("' OR ''='");
echo "<br>";
echo $s->enjeksiyonKaldir("'' OR ''=''");
echo "<br>";
echo $s->enjeksiyonKaldir("'OR''='");
echo "<br>";
echo $s->enjeksiyonKaldir("hey' or 1=1–");
echo "<br>";
echo $s->enjeksiyonKaldir("''Or 1 = 1'");
echo "<br>";
echo $s->enjeksiyonKaldir("' or 1=1-- ");
echo "<br>";
echo $s->enjeksiyonKaldir("or 1=1--");
echo "<br>";
echo $s->enjeksiyonKaldir("\" or 1=1--");
echo "<br>";
echo $s->enjeksiyonKaldir("or 1=1--");
echo "<br>";
echo $s->enjeksiyonKaldir("' or 'a'='a");
echo "<br>";
echo $s->enjeksiyonKaldir("\" or \"a\"=\"a");
echo "<br>";
echo $s->enjeksiyonKaldir("') or ('a'='a");
echo "<br>";
echo $s->enjeksiyonKaldir("hi\") or (\"a\"=\"a");
echo "<br>";
echo $s->enjeksiyonKaldir("'hi' or 'x'='x';");
echo "<br>";
echo $s->enjeksiyonKaldir("x' or 1=1 or 'x'='y");
echo "<br>";
echo $s->enjeksiyonKaldir("\x27\x4F\x52 SELECT *");
echo "<br>";
echo $s->enjeksiyonKaldir("\x27\x6F\x72 SELECT *");
echo "<br>";
echo $s->enjeksiyonKaldir("'or select *");
echo "<br>";
echo $s->enjeksiyonKaldir("admin'--");
echo "<br>";
echo $s->enjeksiyonKaldir("\")) or ((\"x\"))=((\"x");
echo "<br>";
echo $s->enjeksiyonKaldir("\" or \"\"+\"");
echo "<br>";
echo $s->enjeksiyonKaldir("admin\"or 1=1 or \"\"=\"");
echo "<br>";
echo $s->enjeksiyonKaldir("admin\") or (\"1\"=\"1\"--");
?>

Çıktısı

039;039;039;039;039;039;
anything039; 039;x039;039;x
1039;039;1039;039;1
039; 11 039;039;039;
quot; 11 quot;quot;quot;
039; 039;039;039;
039;039; 039;039;039;039;
039;039;039;039;
hey039; 11ndash;
039;039; 1 1039;
039; 11 
11
quot; 11
11
039; 039;a039;039;a
quot; quot;aquot;quot;a
039;) (039;a039;039;a
hiquot;) (quot;aquot;quot;a
039;hi039; 039;x039;039;x039;;
x039; 11 039;x039;039;y
039; 
039; 
039; 
admin039;
quot;)) ((quot;xquot;))((quot;x
quot; quot;quot;quot;
adminquot; 11 quot;quot;quot;
adminquot;) (quot;1quot;quot;1quot;