IDS'den sorgulara, sümüklü böceklerle çalışan yöntemlere sahip olan yöntemleri yeniden denemeye çalışıyorum.Codeigniter güvenli sorgular ve xss clean
Yani temelde bu: Buna
public function view($id)
{
$id = (int)$id;
$this->db->where('id', $id)->get('recipes')
}
: Bu güvenli değil bir xss olduğunun farkında olduğum ikinci yöntemde
public function view($slug)
{
$this->db->where('slug', $slug)->get('recipes')
}
. Sorgu bağlantıları ile tüm sorguları yeniden oluşturmak en iyi olacağını düşünüyorum. böylece gibi
:
$sql = "SELECT * FROM some_table WHERE id = ? AND status = ? AND author = ?";
$this->db->query($sql, array(3, 'live', 'Rick'));
Ama ikinci yöntem örnekteki CodeIgniter'da falan kurşunu temizlemek için yüklenebileceğini bazı işlevlere sahip mümkün olduğunu yeniden yapmak çok Munch sorguları var?
$this->security->xss_clean($slug)
Bütün ekleme veya güncelleme verilerini tahmin
Bu $ 'in kullanımı' $ 'db-> (' sümüklü ', $ sümüklü) -> olsun (' yemek tarifleri ') 'ile aynı sonuçları verir. $ this-> db-> query ($ sql, array (3, 'live', 'Rick')); İkinci yöntem çok daha etkilidir çünkü tam olarak ulaşmak için yüzlerce satır kod koyamazsınız. aynı sorgu. 'View ($ id)' örneği, int için cast nedeniyle girdinin ('$ id') dezenfekte edilmesinin etkisine sahiptir. Bu, engellemeye çalıştığınız olası SQL enjeksiyon saldırılarını ortadan kaldıracaktır. xss_clean() 'izin verilmeyen karakterleri de kaldıracaktır ve aynı zamanda da kabul edilebilir - ancak etkili değildir. – DFriend
Tüm bunların farkındayım çünkü xss_clean kullanımı oldukça iyidir. Yeniden yapılandırmaya ihtiyacım olan çok fazla yöntem var, bu yüzden her şeyi tekrar test etmemek istiyorum, çünkü diğer geliştiricilerden yazılıyor. Bence xss_clean ile istediğimi alacağım. Sorguları kaydet, ancak tüm yöntemleri yeniden denemek kolay. –