Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 3928|Risposta: 3

[Fonte] EF 6 esegue istruzioni SQL native, problemi di iniezione di parametri

[Copiato link]
Pubblicato su 14/06/2023 21:14:48 | | | |
Requisiti: Il progetto utilizza il framework EF ORM per aggiungere, eliminare, modificare e controllare il database, ma di fronte a query complesse potrebbe non essere possibile utilizzare Linq e Lambda per query migliori, quindi dobbiamo usare EF 6 per eseguire istruzioni SQL native per le querying.

Query SQL grezzo (EF6):Il login del link ipertestuale è visibile.

Poiché le istruzioni SQL devono portare la condizione where, il valore del parametro viene passato attraverso il parametro URL.


Innanzitutto, la nostra istruzione SQL utilizza la concatenazione delle stringhe per interrogare, come segue:



Il codice è il seguente:

Puoi vedere le istruzioni SQL eseguite dal database come segue:

SELEZIONA Nome DA [Classificazione] DOVE Nome = 'Sviluppo Mobile'; seleziona 1; --'

PassareIl modo in cui le istruzioni SQL vengono spliced è a rischio di iniezione

Abbiamo modificato il codice per prevenire attacchi di iniezione SQL parametrizzando le query, e il codice è il seguente:



exec sp_executesql N'SELECT Name FROM [Classificazione] WHERE Name = @n',N'@n nvarchar(17)', @n=N'Mobile Dev''; seleziona 1; --'




Invece di usare direttamente lo splicing, EF Core lo converte in istruzioni SQL parametrizzate. I riferimenti sono i seguenti:

EF Core Series (5) esegue istruzioni o viste SQL, stored procedure
https://www.itsvse.com/thread-9565-1-1.html

(Fine)





Precedente:Intuizione: ho visto la firma di una blogger dal blog garden
Prossimo:Usa lo strumento di infiltrazione SQLMAP per il test di iniezione SQL
 Padrone di casa| Pubblicato su 17/06/2023 11:11:50 |
Testa il test di iniezione SQL con lo strumento di infiltrazione SQLMAP
https://www.itsvse.com/thread-10611-1-1.html
 Padrone di casa| Pubblicato su 30/06/2023 20:47:17 |
Forma abbreviata

 Padrone di casa| Pubblicato su 02/01/2025 12:10:38 |
[Combattimento vero e proprio]. Generatore di query NET/C# SQL basato su sqlkata
https://www.itsvse.com/thread-10370-1-1.html
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com