本篇内容主要讲解“甲骨文数据库实现SQL注入模拟与恢复”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“甲骨文数据库实现SQL注入模拟与恢复”吧!
1只,,,,,Oracle SQL注入过程
1.1.SQL注入方式
从网上下载感染病毒的介质,在数据库实例创建时SQL注入脚本被执行并创建了相应的触发器和加密存储过程。这种注入方式由于在数据库实例创建时用系统账号运行了被感染的脚本文件因此不需要依赖数据库中的DBA权限的用户。这种注入方式通过在$ ORACLE_HOME/rdbms/管理下的prvtsupp.plb文件中添加一个加密的过程和一个触发器的创建脚本,在用户创建实例时会执行prvtsupp.plb该文件从而达到入侵的目的。通过对prvtsupp。拉钮文件中的过程进行解密后的内容如下:
另外一种注入方式就是网上下载了被病毒感染的PL/SQL或蟾蜍客户端工具,如果用户登陆这些工具时使用具有dba权限的用户,则工具会在后台执行执行相应的病毒脚本并创建上面的过程和触发器。
1.1。SQL注入行为
该触发器在每次数据库重启后执行存储过程,而存储过程执行时会判断当前时间距数据库创建时间是否大于指定的天数(我这次遇到的是300天),如果大于指定的天数则在数据库重启后将数据库字典基表选项卡美元备份后并清空。
在标签表美元被清空后如果数据库不再重启的话,数据库后台提醒日志在报一系列ora - 00600后会一直会报错ora - 00604和ora - 00957
2只,,,,Oracle SQL注入过程模拟
模拟直接执行原加密的存储过程,如下:
执行存储过程后关闭数据库再次启动发现报错ora - 00600提示引导核心对象损坏。
3只,,,,应急修复过程测试
本次模拟修复采用shell脚本调用bb批量修改标签表美元对应的块,来恢复美元标签表删除的记录。由于只修改了标签美元对应的簇表块并没有修复索引(索引可以禁用,不建议修复)。所以在修复后只能通过exp将用户数据导出后进行重建数据库来恢复数据。
将受损的基表对应的系统表空间数据文件上传到linux平台执行相应的恢复脚本进行恢复如下:
修复完成后将文件拷贝回windows平台,然后启动数据库(建议以读alt=凹坠俏氖菘馐迪諷QL注入模拟与恢复">
导出对应的用户数据
,,,,,, 甲骨文数据库实现SQL注入模拟与恢复