PHP dizi serileştirip önlenmesi enjeksiyon

1 Cevap php

Ben veri depolamak için tefrika dizileri kullanan bir PHP komut dosyası yazıyorum. Nasıl serileştirme enjeksiyon önleyebilir? Bu hesabın adını çok kolay olurdu:

something";s:6:"access";s:5:"admin";

Basit bir örnek. Kullanıcı daha sonra bir şekilde gerekli parametrelerin kalanı eklenebilir. Addslashes bunun için çalışmak istiyorsunuz? Php kaçan bir karakter olarak bu konuda pick up unserialize mı? Eğer öyleyse, bu yineleme olmadan bütün bir diziye addslashes uygulamak mümkün mü?

Yardımın için teşekkürler!

1 Cevap

Öğrenmek için en iyi yolu, içinde "olan bir dize ile bir dizi seri hale denemek olacaktır

Her neyse: evet, serialize depoladığınız verileri çift tırnak için hesap yapar:

$ php -r "var_dump(unserialize(serialize(array('\"'))));"
array(1) {
  [0]=>
  string(1) """
}