gpt4 book ai didi

oracle - Oracle中的参数篡改

转载 作者:行者123 更新时间:2023-12-02 21:18:37 25 4
gpt4 key购买 nike

我使用 Checkmarx 工具扫描了我的 Oracle 软件包是否存在安全漏洞。 Checkmarx 生成了一份报告,称我的代码存在参数篡改漏洞类型。我将直接在数据库本身中运行代码,无需任何前端应用程序。在这种情况下,参数篡改将成为一个问题。如果是,那么如何在包本身中添加验证以防止参数篡改?

我无法将实际代码放在这里,但它是这样的:

PROCEDURE TEST1(START_DATE IN DATE) IS 
BEGIN
END_DATE := TO_DATE(TRUNC(LAST_DAY(START_DATE)), 'DD-MON-RRRR');

最佳答案

END_DATE := TO_DATE(TRUNC(LAST_DAY(START_DATE)), 'DD-MON-RRRR');

表达式包含隐式日期转换。 TO_DATE 函数需要一个字符串; TRUNC 返回的日期被隐式转换转换为字符串,然后显式转换回日期。 TO_DATE 是多余的,可以删除。

有多种方法可以扰乱 NLS_DATE_FORMAT session 参数来破坏日期转换,但在这种情况下我没有看到安全问题。

但是,该工具明智地警告您此处的日期处理。 TO_DATE 函数始终是可疑的,并且 99% 的时间都没有正确使用。

关于oracle - Oracle中的参数篡改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29080030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com