SQL İnjection ve XSS saldırıları uygulamak için kendi laboratuvarınızı kurun

Sitelere 3.şahıs olarak SQL İnjection ve XSS saldırılarını yapmanın suç olduğunu biliyoruz.Peki biz bu saldırıları uygulamalı olarak nasıl öğreneceğiz?Tabiki SQL İnjection ve XSS saldırı egzersizleri için kendi laboratuvarımızı kuracağız ve böylelikle suç işlememiş olacağız.Herşey yasal olmuş olacak. Devamını Oku...

PHP Hazır Deyimler

Hazır deyimler, SQL için önceden derlenmiş şablonlardır.MySQL 5.0 versiyonunda esnekliği ve güvenliği artırmak için tanıtıldı.Bu deyimlerin getirdiği avantajları sıralayalım.

  • Yüksek performans
  • SQL İnjection önleme
  • Blobları işlerken bellek tasarrufu

Yüksek performans olayını biraz açıklayalım.Diyelim bir sorgumuz var.Bu sorgu veritabanı tarafından önce çözümlenir sonra derlenir daha sonrada bize cevap verir.Aynı sorgu için mesela kullanıcı tablosundan “where=cihan” şartıyla tüm bilgileri getiren bir sorguda sadece şartı değiştirdiğimizde bile bu sorgu herdefasında çözümlenecek, derlenecek buda bize gözle görülür bir yavaşlık getirecek.İşte prepared statements bu sorunu ortadan kaldırır.Bir defa derlenir çok kez çalıştırılır buda bize performans artışı sağlar.

Prepared Statements (Hazır Deyimler) Temelleri

Şimdi bu hazır deyimleri bir örnekte kullanarak konuya biraz daha giriş yapalım.Aşağıdaki örnekte bir prepared statements oluşturduk ,çalıştırdık ve sonuçları getirttik.

<? $mysqli = new mysqli("localhost", "un" "pwd", "db"); if (mysqli_connect_errno()) { echo("Failed to connect, the error message is : ". mysqli_connect_error()); exit(); } $stmt = $mysqli ->prepare("select name, pass from users order by name"); $stmt->execute(); $stmt->bind_result($name, $pass); while ($stmt->fetch()) { echo $name."<br/>"; } ?> Devamını Oku...