作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Checkmarx 中遇到错误。
Method
abortJob
at line 209 ofXXX/classes/Monitoring.cls
gets user inputfrom theselect
element.
This element’s value then flows through the code without being properly sanitized or validated, and is eventually used in a database query in methodjobAbortRem
at line 209 ofXXX/classes/Monitoring.cls
.
This may enable anSOQL Injection attack.
Source Destination
File XXXX/classes/Monitoring.cls XXXX/classes/Monitoring.cls
Line 212 217
Object select select
public static void abortJob() //line no. 209
{
list<CronTrigger> detailId=[select id FROM CronTrigger
where (CronJobDetail.Name='myJobName') AND NextFireTime = null]; //line 212
if (detailId.size() > 0)
{
Id jobId = [SELECT Id from CronTrigger WHERE id = :detailId].get(0).Id; //and line 217
System.abortJob(jobId);
Monitoring.scheduleJob();
}
}
帮助我解决这个问题,我怎样才能通过 Checkmarx 审查。
最佳答案
使用 escapeSingleQuotes 方法清理 detailId 的每个元素(我建议重命名这个)集合
public static void abortJob() {
list<CronTrigger> detailId=[select id FROM CronTrigger where (CronJobDetail.Name='myJobName' ) AND NextFireTime =null];
Id jobId ;
for (CronTrigger currentCron : detailId) {
jobId = String.escapeSingleQuotes(currentCron.Id);
}
if (jobId !=null) {
System.abortJob(jobId);
Monitoring.scheduleJob();
}
}
这是
Salesforce Secure Coding有用的引用
关于kotlin - 二阶 SOQL SOSL 注入(inject) SFDC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63517357/
下午好。 我正在使用这样一个简单的 SOSL 查询 find {"2099"} in phone fields 它返回匹配 12320995 的对象,例如。有没有办法将查询设置为只返回完全匹配的结果?
我在 Checkmarx 中遇到错误。 Method abortJob at line 209 of XXX/classes/Monitoring.cls gets user inputfrom th
我是一名优秀的程序员,十分优秀!