TA的每日心情 | 开心 2014-7-28 21:47 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
我们在阅读和学习系统安全文献和黑客技术文章时,经常看到的是一些攻击策略和系统安全漏洞,但无法理解黑客是如何攻击系统的每个环 节,因此系统管理员无法具体地进行安全防范。
, g( F( V" e0 F: Z) X# }: |7 [, \8 \/ g. ]6 `$ y5 ?) s& F. a
INTERNET上的主机多数使用UNIX主机,包括Solaris、Digital Unix、Linux等,因此首先推出UNIX篇,主要内容包括:目标分析、智取文档、破解密码、打扫战场等技术。 3 v( c$ F; [8 b) t9 X
, I0 K! p6 i. M4 O! H7 ] 1、锁定目标 ' Q' h; c8 X0 d0 j; P% Z, w4 z
' j' P- u) Y2 C6 \
INTERNET上每一台主机都有一个符合自己的名称,就像每个人都有一个合适得称呼一样,称做域名;然而一个人可能会有几个名字,域名的定义也会有同样的情况,在INTERNET上能真正标识主机的是IP地址,域名只是用IP指定的主机用于好记的而起的名字。当然利用域名和IP地址都可以顺利找到主机(除非你的网络不通)。要攻击谁首先要确定目标,就是要知道这台主机的域名或者IP地址,例如:www.xxxxx.com、1.1.1.1等。知道了要攻击目标的位置还很不够,还需要了解系统类型、操作系统、提供服务等全面的资料,才能做到“知己知彼,百战不败”,如何获取相关信息,下面我们将详细介绍,如果对网络域名和IP地址不清楚的,赶紧翻一下手头的书吧!并且现在练习一下PING命令吧!相信在实战中会用得到!有什么用?如果PING目标主机返回时间太长或你根本PING不通目标主机,你如何继续呢!(目标不在你的射程之内) 7 x+ E, X$ \+ S7 W( t
" g" Q* X# N2 d; `! J8 }
2、端口分析 0 R; Z, _+ \ w W
$ Q8 ?) U5 ]9 u* x. Q
INTERNET上的主机大部分都提供WWW、MAIL、FTP、BBS等网络信息服务,基本每一台主机都同时提供几种服务,一台主机为何能够提供如此多的服务呢?UNIX系统是一种多用户多任务的系统,将网络服务划分许多不同的端口,每一个端口提供一种不同服务,一个服务会有一个程序时刻监视端口活动,并且给予应有的应答。并且端口的定义已经成为了标准,例如:FTP服务的端口是21,TELENT服务的端口是23,WWW服务的端口是80等,如果还想了解更多请进行下面的步骤:
1 B$ @5 @% B3 e- z: }; o/ a {* C! ^; y% T5 l1 j( h+ i. l1 _8 `
进入MS-DOS PROMPT . F& ]6 {$ t4 d+ J, `
# p3 v, W+ p. N C:\WINDOWS>edit services (回车) + _1 l& Y. {( p& U, [" O) J- j
慢慢阅读吧!不过很多的端口都没有什么用,不必把它们都记住!我们如何知道目标主机提供了什么服务呢?很简单用用于不同服务的应用程序试一试就知道了,例如:使用TELNET、FTP等用户软件向目标主机申请服务,如果主机有应答就说明主机提供了这个服务,开放了这个端口的服务,但我们现在只需知道目标主机的服务端口是否是“活”的,不过这样试比较麻烦并且资料不全,我会经常使用一些象PORTSCAN这样的工具,对目标主机一定范围的端口进行扫描。这样可以全部掌握目标主机的端口情况。现在介绍一个好工具,缺少好工具,就不能顺利完成工作。 , H* a* |5 g. I$ ]5 u; w8 R
" u0 s2 O$ x# u, d
HAKTEK是一个非常实用的一个工具软件,它将许多应用集成在一起的工具,其中包括:PING、IP范围扫描、目标主机端口扫描、邮件炸弹、过滤邮件、FINGER主机等都是非常实用的工具。 ! U$ f! _ @: s# `* d& m. Z' \
$ i9 i7 t O" l7 b* e) ]
完成目标主机扫描任务,首先告诉HAKTEK目标主机的位置,即域名或IP地址。然后选择端口扫描,输入扫描范围,开始扫描,屏幕很快返回“活”的端口号以及对应的服务。对资料的收集非常迅速完整。为什么掌握目标的服务资料?如果目标主机上几个关键的端口的服务都没有提供,还是放弃进攻的计划吧,不要浪费太多时间放在这个胜率不大的目标上,赶紧选择下一个目标。先看一个扫描实例: 9 H! w0 d: B) `( R# s
2 a9 C' e9 k; `. K# `2 Z" i) [; q
Scanning host xx.xx.xx, ports 0 to 1000
) D5 E. p* _- d! C+ j
0 Q, u- M, B R/ j8 x. B4 y6 z Port 7 found. Desc='echo'
6 {+ n* c# L/ A5 f5 T3 h# {
% h) P( B8 Y, y1 R. H- P5 G Port 21 found. Desc='ftp' & |! ]: L2 F$ }0 v4 H" @3 Z
* U' N* b* m' H5 k6 W. g Port 23 found. Desc='telnet'
2 B" ^+ k `$ [# v* f
9 \: B* }5 ^% |, G; _ Port 25 found. Desc='smtp' 8 u9 _0 R3 v8 L( O% h/ t
7 K5 _; k7 \2 k Port 53 found. Desc='domain/nameserver' - x; Y8 ~, y. F2 X& I. g# m
. I+ b H- H) g- R& U Port 79 found. Desc='finger' , g% t+ @% f$ l
" W* W9 M- n+ G: f, ~
Port 80 found. Desc='www'
6 u' S, \$ D! {# \9 R
' @! @) z& v& \4 U1 z* T: s Port 90 found.
2 n9 Y; T8 m4 d7 `: ^6 _: I/ G
# ]+ ~, b: z- n+ Y2 v Port 111 found. Desc='portmap/sunrpc'
( K2 X! {' j( M5 B% b4 Y
# _- ^9 L2 l8 \ Port 512 found. Desc='biff/exec'
) y3 z- b9 i) N. v
6 w/ a. h) w* _- X, F Port 513 found. Desc='login/who' R: _& D; ]5 k! @% ?& A, O
. W$ G4 O) c$ t* A! W2 R7 z8 @2 g
Port 514 found. Desc='shell/syslog'
+ y" ~+ {6 g4 R- `8 e- }/ Z; g# Y2 q1 K4 q
Port 515 found. Desc='printer' $ L5 s, ]( f2 _. C( o) I
5 u& [9 S/ N; ~7 u3 U. L3 J Done! 9 M. Y4 o% P3 P5 f1 W# y
如果系统主要端口是“活”的,也不要高兴太早,因为系统可能加了某些限制,不允许任何用户远程连接或不允许ROOT远程连接,或者进入后限制用户只能做指定的活动便又被强行中断,这仅仅指TELNET服务而言,其实还会遇到很多复杂的情况。 . A& X, a+ { @- i
7 g3 Z/ w2 j$ W$ V# x5 O
这里只介绍目标主机是否开放了端口,而我们还不知目标主机使用的是什么系统,每一个端口的服务程序使用的是什么版本的系统,不要急,先联系一下HAKTEK工具吧!没有,快去下载吧! : |" p+ p! ~5 b( P+ W8 o0 o/ y. f5 m% c% _
" T8 e: C0 @' @2 d% k4 K
3、系统分析 " E* @( B4 }$ b9 F3 ^9 j6 s
: _" [, J, y' l0 i3 z+ T$ X8 f
现在开始讲解如何了解系统,目标主机采用的是什么操作系统,其实很简单,首先打开WIN95的RUN窗口,然后输入命令: 2 Y% D6 \' X) F% K" U
& U4 q& A1 k$ i TELNET xx.xx.xx.xx(目标主机) 4 s m7 K. C1 k% [& I3 ]% M
7 A3 o/ |: C4 ` 然后[确定],看一看你的屏幕会出现什么?
2 L8 y& I* B. Q2 O" X- x; B( r6 w5 @' H
Digital UNIX (xx.xx.xx) (ttyp1) 2 [, O1 e1 n% p3 q9 p# Y
4 t7 [0 h6 d; |" ^- K- p, ^ login: 2 A9 f+ Z& H+ o+ v
. l# }/ \+ k7 J" q+ \2 C f+ H 不用我说你也会知道你的目标主机和操作系统是什么啦!对,当然是DEC机,使用的是Digital UNIX啦!好,我们再看一个:
* h' [; V9 \& f% I3 Q- s# I! i- j' @' X
有些系统将显示信息进行了更改,因此就不好判断其系统的信息,但根据一些经验可以进行初步的判断,它可能是HP Unix。 5 n I5 L% z9 e
) T/ Z) U2 n/ k3 \% ]1 I
另外利用上面介绍的工具HAKTEK,利用目标主机的FINGER功能也可以泄露系统的信息。
6 W! n3 E2 G' o! z3 \0 g! l% ~. I |1 r8 Q3 r+ W0 c2 L( m& W9 L
Establishing real-time userlist... (Only works if the sysadmin is a moron)
% ]: p. t5 i% p: l; o8 {, j0 K( b" Z" L1 M, Y# b
---[ Finger session ]------------------------------------------------------- 4 B! c! K* H* I5 h# m8 K
: d0 s8 r: k. D- D0 B3 `
Welcome to Linux version 2.0.30 at xx.xx.xx 2 x% N4 [ \# T- m% Q
4 u3 H( D I% Y4 d$ j
...
) G- h: J6 n9 S/ X+ Q5 \: e上面的这句话就已经足够! 2 W+ s9 C1 U6 C2 E* v! e; `
( {4 p0 b1 y8 W( c S3 _ 如何知道系统中其它端口使用的是什么服务?例如23、25、80等端口。
8 y, J- _4 ^9 u" y& Y* X
! x. q/ ~# g/ V 采用同样上面的手段,利用TELNET和本身的应用工具,FTP等。 " ]: Q! i y y" T P& W' U& x
/ n: l5 D* M6 h8 I( x3 d* f4 q 使用TELNET是请将端口号作为命令行参数,例如: 7 z3 P, l! G5 v0 Q9 \( H! q( \, E' S) p
3 U. r2 _( k) t" t
telnet xx.xx.xx 25
2 f0 `; h3 ]$ K# R7 I8 r' X, _6 ]
$ I$ t& V% z- Y3 P" y 就会有类似下面的信息提供给你: 5 D! u' v. B* E' \, ?. b
1 W C: q1 l- ]
220 xx.xx.xx Sendmail 5.65v3.2 (1.1.8.2/31Jan97-1019AM) Wed, 3 Jun 1998 13:50:47 +0900 : @$ A0 w6 Z: b- [4 K
" H8 n3 C& Y5 h1 c; q 这样很清楚目标主机Sendmail的版本。当然对很多端口和不同的系统根本没有用。 + Q0 O. d' \6 l2 ^: ?
) X6 z. Z" C/ M) r: d9 j! O3 h 因此需要对应的应用工具才能获得相应的信息。例如:
; X: N/ S( _/ c5 g( x6 q% P: Z+ e+ v! k9 H% L7 r
Connected to xx.xx.xx.220 xx.xx.xx FTP server (Digital UNIX Version 5.60) ready.
3 \6 p9 {* ^* s3 c: i
, |& N# Z4 w: g5 u User (xx.xx.xxnone)): 8 i5 C4 B4 R9 v1 T+ l
6 K O0 z/ y0 p# C% Q4 N2 U j
INTERNET上大多数是WWW主机,如何知道目标主使用的是什么样的WEB SERVER,介绍一个页面的查询工具,只要你告诉它目标主机的地址和WEB服务断口,它立刻会告诉你有关信息。 4 d( V' z9 z" B7 C$ F* G7 S
2 x8 B# X7 U5 l) i! H. k6 C. @
4、深入研究 ' T+ C8 ^& n9 j* s, z" l0 z
2 ^, g: ?2 [3 U' f4 J: d- ]
上面介绍的内容都非常简单,多试几次便会轻松掌握。由于系统管理员对系统进行了一些限制,因此即使得到了这些信息也不能轻松地对系统攻击,还要进一步掌握情况。进行这些工作都是为下一步的工作做准备,破解UNIX主机最主要是想方设法获得UNIX的密码文件,通过破解口令,获得较高权限帐户的口令,主要是ROOT的口令。 |
|