TA的每日心情 | 开心 2014-7-28 21:47 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
我们在阅读和学习系统安全文献和黑客技术文章时,经常看到的是一些攻击策略和系统安全漏洞,但无法理解黑客是如何攻击系统的每个环 节,因此系统管理员无法具体地进行安全防范。
, W7 ^* G ? W3 i1 F3 s3 |; \" @# L% Z) L+ F
INTERNET上的主机多数使用UNIX主机,包括Solaris、Digital Unix、Linux等,因此首先推出UNIX篇,主要内容包括:目标分析、智取文档、破解密码、打扫战场等技术。 # R7 W1 l$ F2 k% M
" ~3 i0 I- X6 L1 B6 W* {! g; U
1、锁定目标 ; i. I e. ^4 a4 i' t7 n
" E. s E% Y3 W/ W# X" ~. Z8 e
INTERNET上每一台主机都有一个符合自己的名称,就像每个人都有一个合适得称呼一样,称做域名;然而一个人可能会有几个名字,域名的定义也会有同样的情况,在INTERNET上能真正标识主机的是IP地址,域名只是用IP指定的主机用于好记的而起的名字。当然利用域名和IP地址都可以顺利找到主机(除非你的网络不通)。要攻击谁首先要确定目标,就是要知道这台主机的域名或者IP地址,例如:www.xxxxx.com、1.1.1.1等。知道了要攻击目标的位置还很不够,还需要了解系统类型、操作系统、提供服务等全面的资料,才能做到“知己知彼,百战不败”,如何获取相关信息,下面我们将详细介绍,如果对网络域名和IP地址不清楚的,赶紧翻一下手头的书吧!并且现在练习一下PING命令吧!相信在实战中会用得到!有什么用?如果PING目标主机返回时间太长或你根本PING不通目标主机,你如何继续呢!(目标不在你的射程之内) ) D) H1 O" [9 K; s& {
! ^( ^1 N t. H. D! }3 `; l 2、端口分析
0 k* r$ X- ~- b9 s- q- G( U
- `8 W+ V$ i, O: ]& A/ Z INTERNET上的主机大部分都提供WWW、MAIL、FTP、BBS等网络信息服务,基本每一台主机都同时提供几种服务,一台主机为何能够提供如此多的服务呢?UNIX系统是一种多用户多任务的系统,将网络服务划分许多不同的端口,每一个端口提供一种不同服务,一个服务会有一个程序时刻监视端口活动,并且给予应有的应答。并且端口的定义已经成为了标准,例如:FTP服务的端口是21,TELENT服务的端口是23,WWW服务的端口是80等,如果还想了解更多请进行下面的步骤: 8 i- m/ _& q# q, Z- H' D* `
+ L1 u' l+ @/ v8 J0 }* X4 E$ G
进入MS-DOS PROMPT
6 U5 K* M; _' _# s+ S" h
( h0 l& g( u, f4 C) J( d C:\WINDOWS>edit services (回车) / t5 @) o$ q+ y h% X% v
慢慢阅读吧!不过很多的端口都没有什么用,不必把它们都记住!我们如何知道目标主机提供了什么服务呢?很简单用用于不同服务的应用程序试一试就知道了,例如:使用TELNET、FTP等用户软件向目标主机申请服务,如果主机有应答就说明主机提供了这个服务,开放了这个端口的服务,但我们现在只需知道目标主机的服务端口是否是“活”的,不过这样试比较麻烦并且资料不全,我会经常使用一些象PORTSCAN这样的工具,对目标主机一定范围的端口进行扫描。这样可以全部掌握目标主机的端口情况。现在介绍一个好工具,缺少好工具,就不能顺利完成工作。
5 }1 m2 a, e! `* H, t( z. A* y9 j& E) S. Y
HAKTEK是一个非常实用的一个工具软件,它将许多应用集成在一起的工具,其中包括:PING、IP范围扫描、目标主机端口扫描、邮件炸弹、过滤邮件、FINGER主机等都是非常实用的工具。 / L6 P" K& ]- D2 |
$ o. D- |* {4 E& Y+ u
完成目标主机扫描任务,首先告诉HAKTEK目标主机的位置,即域名或IP地址。然后选择端口扫描,输入扫描范围,开始扫描,屏幕很快返回“活”的端口号以及对应的服务。对资料的收集非常迅速完整。为什么掌握目标的服务资料?如果目标主机上几个关键的端口的服务都没有提供,还是放弃进攻的计划吧,不要浪费太多时间放在这个胜率不大的目标上,赶紧选择下一个目标。先看一个扫描实例: 8 I) Z. q1 Y8 w0 i! [! [. f
7 w/ S, z# U* o1 V
Scanning host xx.xx.xx, ports 0 to 1000
. [, B, h. Z! L* q3 O" r: D9 _+ g) ^# T
Port 7 found. Desc='echo' & ~; R9 a3 v3 C; i) ~3 P0 ?, ?
" l% S9 R# J0 p# q" z$ S! f, _% e Port 21 found. Desc='ftp' . Y( j$ }! V4 ?7 c0 \) O4 d( o
4 |7 J I# M f M! T5 Q Port 23 found. Desc='telnet' - E1 o1 G; o! g/ f( A. J
* B" c- q: i) R) ]8 e
Port 25 found. Desc='smtp'
) \9 X5 A2 @- B% q( q6 M
) L% m4 E( `, T' o Port 53 found. Desc='domain/nameserver'
. J& l& w C6 o
" @: K* ~. l0 p9 x- y# J Port 79 found. Desc='finger' $ |8 M. [) }2 v; d
% C% R+ B8 o& o& H+ |0 e& Z( s Port 80 found. Desc='www' ; R9 [/ l: _, \- ]* ?) P
$ i0 a; O- n$ c4 T
Port 90 found.
" t, J, y) } P# Q) h* {, M; Y" q( u3 E x M4 x: {
Port 111 found. Desc='portmap/sunrpc' 9 y1 X6 a3 ?2 z5 f4 W+ I
! z5 H$ F/ w6 l$ ?6 h) K) l; z
Port 512 found. Desc='biff/exec'
# g0 R, q4 B: o
& B. t- g: o/ a! q: j- P Port 513 found. Desc='login/who' * {7 n4 D; l/ Q7 R1 \
& \+ r% r) c$ j7 r; g5 q* I Port 514 found. Desc='shell/syslog' " q2 t4 l U" I, V1 N4 n
$ W- z& |5 w# K! `/ @6 I
Port 515 found. Desc='printer'
/ f! W5 F+ B) F1 @
8 ~8 l7 x" z: c$ K, J. l7 H Done!
3 ^; b. O( M/ e8 Z如果系统主要端口是“活”的,也不要高兴太早,因为系统可能加了某些限制,不允许任何用户远程连接或不允许ROOT远程连接,或者进入后限制用户只能做指定的活动便又被强行中断,这仅仅指TELNET服务而言,其实还会遇到很多复杂的情况。
/ x/ m Y& R0 _. o2 v
( j& P3 @. S" L; y+ l 这里只介绍目标主机是否开放了端口,而我们还不知目标主机使用的是什么系统,每一个端口的服务程序使用的是什么版本的系统,不要急,先联系一下HAKTEK工具吧!没有,快去下载吧!
' B& z5 ~* Q/ L. n
$ U9 a n% ]/ s- m8 Z) E2 z3 E3 D 3、系统分析
- y2 ~- v4 R7 Q% y3 N( J6 x) c) G9 g7 D( M- [2 p2 ~) d
现在开始讲解如何了解系统,目标主机采用的是什么操作系统,其实很简单,首先打开WIN95的RUN窗口,然后输入命令: r$ E' E' w! I- o; q# n0 i! S
( m7 {% \" L, D6 A TELNET xx.xx.xx.xx(目标主机) & q& o; y/ s" [2 o3 N
9 p" i( `0 X) _7 [1 b7 u
然后[确定],看一看你的屏幕会出现什么?
. |' n6 H( [4 h$ F) g, K9 ]& q" C: [5 w! j/ W/ T1 a' W5 J
Digital UNIX (xx.xx.xx) (ttyp1)
, J+ r' L3 u( z$ z5 m* z' R$ _5 d5 o4 {; |( l2 r6 {! Y
login:
" w6 T/ u% ~* K# O6 I2 F0 ]5 [. E
$ b0 B, p- Z- Y) x! U 不用我说你也会知道你的目标主机和操作系统是什么啦!对,当然是DEC机,使用的是Digital UNIX啦!好,我们再看一个: 2 t$ t6 n& l0 q. p5 D
# ]/ M* B5 g! M# y) ^: m 有些系统将显示信息进行了更改,因此就不好判断其系统的信息,但根据一些经验可以进行初步的判断,它可能是HP Unix。 , h0 f$ Y! o+ d' V3 H
. J5 R: K1 t6 O- A( F" D1 q
另外利用上面介绍的工具HAKTEK,利用目标主机的FINGER功能也可以泄露系统的信息。 ; C# m: b) f0 p7 C4 Z5 {
, j2 t) o$ m0 f+ A4 f7 i' {
Establishing real-time userlist... (Only works if the sysadmin is a moron) ) D/ q: g$ @' ?0 Y
; A- o* v% Q" G# p
---[ Finger session ]-------------------------------------------------------
{: D( c, @7 b. F. ]
6 m c) B4 v0 J9 e Welcome to Linux version 2.0.30 at xx.xx.xx 6 @% n5 v' M+ t* k8 Q, K
/ k* I% I1 y q p3 A$ h: e ... $ W7 l+ n/ p4 ]+ s$ v# b
上面的这句话就已经足够!
9 p! c$ r2 x+ a2 U" X# l; _2 W- o' h7 r- ^' ?
如何知道系统中其它端口使用的是什么服务?例如23、25、80等端口。 v2 i2 q2 Z0 y9 I, z( y
7 F [8 l3 S4 U( b! }+ ^
采用同样上面的手段,利用TELNET和本身的应用工具,FTP等。
' f2 U+ N6 k! S8 s" [+ C* Q, `) Q* j9 t" b7 H
使用TELNET是请将端口号作为命令行参数,例如: ) Y% J) c2 k7 g) G8 }# o; C
0 \3 N2 z3 i, O6 ]9 g telnet xx.xx.xx 25
. R7 k0 Z5 Q9 |& Z. o
/ k; ]4 j% Q6 n3 }+ z 就会有类似下面的信息提供给你: [; U3 }- F2 S6 `% c% r
7 `4 A) L; r4 \. s. f
220 xx.xx.xx Sendmail 5.65v3.2 (1.1.8.2/31Jan97-1019AM) Wed, 3 Jun 1998 13:50:47 +0900
% p9 H, H' L2 ?2 W$ R/ a9 _5 r4 }; L3 @8 h" J
这样很清楚目标主机Sendmail的版本。当然对很多端口和不同的系统根本没有用。 " e% |$ n' N6 K8 }2 L
1 ^& b. D& k' b E' S, A 因此需要对应的应用工具才能获得相应的信息。例如:
( ^# ^) l. C: l$ J5 R) k( I
1 a, ^. y9 X' \/ N" _ Connected to xx.xx.xx.220 xx.xx.xx FTP server (Digital UNIX Version 5.60) ready. & h* [* ` T& `, m
" F) D. t0 I6 ^/ E User (xx.xx.xxnone)): 2 U0 N& {- p) _. ]
E, q$ M9 @. c( d9 m; k. L
INTERNET上大多数是WWW主机,如何知道目标主使用的是什么样的WEB SERVER,介绍一个页面的查询工具,只要你告诉它目标主机的地址和WEB服务断口,它立刻会告诉你有关信息。 5 P7 L' g8 o9 O- \
. {' p% `! v# y4 `
4、深入研究
3 ~; @+ [5 H E- @) g) @. b+ m0 H) H
; b; a6 X% M8 `4 f4 {+ E! ] 上面介绍的内容都非常简单,多试几次便会轻松掌握。由于系统管理员对系统进行了一些限制,因此即使得到了这些信息也不能轻松地对系统攻击,还要进一步掌握情况。进行这些工作都是为下一步的工作做准备,破解UNIX主机最主要是想方设法获得UNIX的密码文件,通过破解口令,获得较高权限帐户的口令,主要是ROOT的口令。 |
|