由于进行了安全测试,我有一套基于Oracle Apex的应用程序。有没有人对我应该采取什么措施提出任何建议?
答案 0 :(得分:1)
Apex应用程序的基础是底层代码都是PL / SQL,因此影响Apex应用程序的主要漏洞类别就是SQL注入也就不足为奇了。
您需要确保不使用替换变量(例如& P1_TEST。),因为这些几乎总是导致可利用的注入。当它们在PL / SQL开始/结束块中使用时,注入非常“强大”,因为攻击者可以指定任意数量的PL / SQL语句。
许多Apex应用程序使用动态SQL(其中查询以字符串形式构建,然后执行),可以通过直接调用EXECUTE IMMEDIATE或通过Apex FUNCTION_RETURNING_SQL块。动态SQL几乎总是一个坏主意。
您还可以在Apex应用程序中找到相当多的跨站点脚本,其中来自用户的输入或针对数据库运行的查询不会被转义。各种Apex报告提供了启用转义的设置,但在定义报告时可能未选择这些设置。
还要考虑访问控制模型,并确保使用适当的授权方案保护所有页面。如果您要存储上传内容,请不要使用APEX_APPLICATION_FILES表,因为这不能防止未经身份验证的下载。
希望有所帮助,祝你好运!