Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 3928|Răspunde: 3

[Sursă] EF 6 execută instrucțiuni SQL native, probleme de injectare a parametrilor

[Copiază linkul]
Postat pe 14.06.2023 21:14:48 | | | |
Cerințe: Proiectul folosește cadrul EF ORM pentru a adăuga, șterge, modifica și verifica baza de date, dar în fața interogărilor complexe, s-ar putea să nu fie posibil să folosim Linq și Lambda pentru interogări mai bune, așa că trebuie să folosim EF 6 pentru a executa instrucțiuni SQL native pentru interogări.

Interogare SQL brută (EF6):Autentificarea cu hyperlink este vizibilă.

Deoarece instrucțiunile SQL trebuie să poarte condiția where, valoarea parametrului este trecută prin parametrul URL.


În primul rând, instrucțiunea noastră SQL folosește concatenarea stringurilor pentru a interoga, după cum urmează:



Codul este următorul:

Puteți vedea instrucțiunile SQL executate de bază de date astfel:

SELECT Name FROM [Clasificare] UNDE Nume = 'Mobile Development'; selectează 1; --'

TreceModul în care sunt spliced instrucțiunile SQL riscă să fie injectate

Am modificat codul pentru a preveni atacurile de injecție SQL prin parametrizarea interogărilor, iar codul este următorul:



exec sp_executesql N'SELECT Name FROM [Clasificare] UNDE Nume = @n',N'@n nvarchar(17)', @n=N'Mobile Dev''; selectează 1; --'




În loc să folosească direct splicing-ul, EF Core îl convertește în instrucțiuni SQL parametrizate. Referințele sunt următoarele:

EF Core Series (5) execută instrucțiuni SQL sau vizualizări, proceduri stocate
https://www.itsvse.com/thread-9565-1-1.html

(Sfârșit)





Precedent:Perspectivă: Am văzut semnătura unui blogger din grădina blogului
Următor:Folosește instrumentul de infiltrare SQLMAP pentru testarea injecției SQL
 Proprietarul| Postat pe 17.06.2023 11:11:50 |
Testează injecția SQL cu instrumentul de infiltrare SQLMAP
https://www.itsvse.com/thread-10611-1-1.html
 Proprietarul| Postat pe 30.06.2023 20:47:17 |
Formă prescurtată

 Proprietarul| Postat pe 02.01.2025 12:10:38 |
[Luptă propriu-zisă]. Generator de interogări NET/C# SQL bazat pe sqlkata
https://www.itsvse.com/thread-10370-1-1.html
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com