Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon SQL Enjeksiyon Middare Paketi Laravel'de Nasıl Çalışır?


SQL Enjeksiyon Middare Paketi Laravel'de Nasıl Çalışır?


Laravel'deki SQL Enjeksiyon Middle yazılımı paketi, gelen HTTP isteklerini ele geçirerek ve SQL enjeksiyon saldırılarını uygulama mantığına veya veritabanı katmanına ulaşmadan önce algılamak ve önlemek için giriş verilerini inceleyerek çalışır. İşte bu tür ara katman yazılımlarının nasıl çalıştığına dair ayrıntılı bir açıklama:

Temel işlevsellik

- Middle yazılımı, sorgu parametreleri, form girişleri ve kullanıcı tarafından sağlanan diğer veriler dahil olmak üzere HTTP istek verilerinde bir filtre görevi görür.
- Kötü amaçlı SQL kodu veya SQL sorgularını manipüle etmek için kullanılabilecek kalıplar içermemelerini sağlamak için bu girişleri doğrular ve sterilize eder.
- Girişleri erken sterilize ederek, güvenli olmayan verilerin çiğ SQL sorgularına veya enjeksiyona karşı savunmasız olabilecek sorgu üreticilerine aktarılmasını önler.

Teknik Mekanizmalar

-Middle yazılımı genellikle şüpheli karakterler veya `` '', `,`-`,` drop`, `select` vb.
- Kötü niyetli kalıplar algılanırsa, tehlikeli karakterlerden kaçabilir veya tehlikeli karakterleri kaldırabilir veya talepleri reddedebilir.
- Bazı ara katman yazılımı paketleri ayrıca, geliştiricilerin olası saldırı girişimlerini izlemesine ve analiz etmesine olanak tanıyan şüpheli girdilerin yapılandırılabilir günlüğe kaydedilmesini sağlar.
- Middleware, küresel olarak tüm yollara veya ekstra koruma gerektiren belirli yollarda seçici olarak uygulanabilir.

Laravel'de Entegrasyon

- Paket besteci aracılığıyla yüklenir ve yapılandırma dosyasını yayınlayarak yapılandırılır.
- Middleware, Laravel'in HTTP çekirdeğinde küresel veya rota ara katman yazılımı olarak kayıtlıdır.
- Kayıt edildikten sonra, gelen her isteği otomatik olarak işler veya üzerinden yönlendirilir.
- Geliştiriciler, konfigürasyon yoluyla stratejileri günlüğe kaydetme, engelleme veya sterilize etme gibi davranışları özelleştirebilir.

Ek Koruma

- SQL enjeksiyonunun yanı sıra, bazı katman yazılımı paketleri de dizin hizmet sorgularında kullanılan girdileri sterilize ederek LDAP enjeksiyonuna karşı korur.
- Middleware, Laravel'in Eloquent ORM ve Query Builder parametre bağlama gibi yerleşik korumalarını, çoğu durumda otomatik olarak kaçan.
- Özellikle doğal olarak daha riskli olan ham SQL sorguları veya çiğ ifadeler (`` wherew`, `selectraw`) kullanıldığında kullanışlıdır.

Kullanım Örneği

-Middle yazılımı paketini yükledikten sonra (örneğin, `composer vair/sql-query koruma 'gerektirir), yapılandırmayı ve önbelleği temizlersiniz.
- Middleware'i `` APP/HTTP/Kernel.php` 'de küresel veya rota ara katman yazılımı olarak kaydediyorsunuz.
- Gelen istekler daha sonra, kontrolörlerinize veya veritabanı katmanınıza ulaşmadan önce girişleri dezenfekte eden veya kötü amaçlı sorguları engelleyen ara katman yazılımı tarafından filtrelenir.

Özetle, Laravel'deki SQL Enjeksiyon Middle yazılımı paketi, SQL enjeksiyon saldırılarını önlemek için HTTP istek düzeyinde kullanıcı girişlerini inceleyen ve sterilize eden proaktif bir güvenlik katmanı olarak çalışır. Uygulamayı ve veritabanını korumak için yapılandırılabilir günlüğü ve engelleme özelliklerini sağlayarak ham sorguları ve şüpheli giriş modellerini hedefleyerek Laravel'in yerel korumalarını geliştirir [3] [4] [5].

Alıntılar:
[1] https://escape.tech/blog/laravel-sql-injection-guide/
[2] https://www.stackhawk.com/blog/sql-injection-prevention-laravel/
[3] https://github.com/aswinsasi/injection-protor
[4] https://gist.github.com/bewithdhanu/3acd9a44c74e9f2696a5e41692fa89a3
[5] https://acquaintsoft.com/answers/what-s-sql-injection-protection-in-laravel
[6] https://stackoverflow.com/questions/15778572/preventing-sql-injectic-in-node-js
[7] https://cheatsheetseries.owasp.org/cheatsheets/laravel_cheat_sheet.html
[8] https://stackoverflow.com/questions/35439234/laravel-decence-injection-in-middleware