我被要求修复静态分析工具报告的SQL注入问题。 SQL查询存储在XML文件中,如下所示。
<Import>
<Command>select USERNAME as ID,USERNAME,(case PASSWORD when 'GLOBAL' then 1 else 0 end) as ISGLOBAL,(case PASSWORD when 'EXTERNAL' then 1 else 0 end) as ISEXTERNAL from dba_users</Command>
<Command attribute="ROLES">select granted_role as ROLES from DBA_ROLE_PRIVS where grantee='&USERNAME'</Command>
<Command attribute="PRIVS">select privilege as PRIVS from DBA_SYS_PRIVS where grantee='&USERNAME'</Command>
</Import>
我必须使用查询参数替换占位符grantee='&USERNAME'
和grantee='&USERNAME'
,例如SQL Server中的@paramName
。我来自C ++背景,我是SQL和.net的新手。
任何指导都会对我有帮助。