Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 3928|Antwoord: 3

[Bron] EF 6 voert native SQL-instructies en parameterinjectieproblemen uit

[Link kopiëren]
Geplaatst op 14-06-2023 21:14:48 | | | |
Eisen: Het project gebruikt het EF ORM-framework om de database toe te voegen, verwijderen, wijzigen en controleren, maar gezien complexe queries is het mogelijk niet mogelijk om Linq en Lambda te gebruiken voor betere queries, dus moeten we EF 6 gebruiken om native SQL-statements uit te voeren voor querys.

Ruwe SQL-query (EF6):De hyperlink-login is zichtbaar.

Omdat SQL-statements de where-voorwaarde moeten dragen, wordt de parameterwaarde via de URL-parameter doorgegeven.


Eerst gebruikt onze SQL-instructie stringconcatenatie om te zoeken, als volgt:



De code is als volgt:

Je kunt de SQL-instructies die door de database worden uitgevoerd als volgt zien:

SELECTEER NAAM UIT [Classificatie] WAAR Naam = 'Mobiele Ontwikkeling'; selecteer 1; --'

InhalenDe manier waarop SQL-statements worden gesplitst, loopt het risico op injectie

We hebben de code aangepast om SQL-injectie-aanvallen te voorkomen door queries te parametriseren, en de code is als volgt:



exec sp_executesql N'SELECTEER Naam UIT [Classificatie] WAAR Naam = @n',N'@n nvarchar(17)', @n=N'Mobile Dev''; selecteer 1; --'




In plaats van direct splicing te gebruiken, zet EF Core het om in geparametriseerde SQL-instructies. Referenties zijn als volgt:

EF Core Series (5) voert SQL-instructies of views uit, opgeslagen procedures
https://www.itsvse.com/thread-9565-1-1.html

(Einde)





Vorig:Inzicht: Ik zag de handtekening van een blogger uit de blog tuin
Volgend:Gebruik de SQLMAP-infiltratietool voor SQL-injectietesten
 Huisbaas| Geplaatst op 17-06-2023 11:11:50 |
Test SQL-injectietesten met de SQLMAP-infiltratietool
https://www.itsvse.com/thread-10611-1-1.html
 Huisbaas| Geplaatst op 30-06-2023 20:47:17 |
 Huisbaas| Geplaatst op 02-01-2025 12:10:38 |
[Echte gevechten]. NET/C# SQL-querygenerator gebaseerd op sqlkata
https://www.itsvse.com/thread-10370-1-1.html
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com