TA的每日心情 | 开心 2014-7-28 21:47 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
我们在阅读和学习系统安全文献和黑客技术文章时,经常看到的是一些攻击策略和系统安全漏洞,但无法理解黑客是如何攻击系统的每个环 节,因此系统管理员无法具体地进行安全防范。
: E) L. C. O0 w/ @, m+ W1 s; e: j3 f/ b/ i' n
INTERNET上的主机多数使用UNIX主机,包括Solaris、Digital Unix、Linux等,因此首先推出UNIX篇,主要内容包括:目标分析、智取文档、破解密码、打扫战场等技术。
4 q ^/ H. G' Q& |2 P- R! {' s' ?* k# h/ p# o4 i* v- G
1、锁定目标 ! J* P+ z) L Q% o
: n. |0 t2 y: j/ W) m
INTERNET上每一台主机都有一个符合自己的名称,就像每个人都有一个合适得称呼一样,称做域名;然而一个人可能会有几个名字,域名的定义也会有同样的情况,在INTERNET上能真正标识主机的是IP地址,域名只是用IP指定的主机用于好记的而起的名字。当然利用域名和IP地址都可以顺利找到主机(除非你的网络不通)。要攻击谁首先要确定目标,就是要知道这台主机的域名或者IP地址,例如:www.xxxxx.com、1.1.1.1等。知道了要攻击目标的位置还很不够,还需要了解系统类型、操作系统、提供服务等全面的资料,才能做到“知己知彼,百战不败”,如何获取相关信息,下面我们将详细介绍,如果对网络域名和IP地址不清楚的,赶紧翻一下手头的书吧!并且现在练习一下PING命令吧!相信在实战中会用得到!有什么用?如果PING目标主机返回时间太长或你根本PING不通目标主机,你如何继续呢!(目标不在你的射程之内) 1 ]8 }* w9 Q4 P i1 K
9 k9 A4 ~* Y2 d6 j; w 2、端口分析
" e5 ^3 u( i9 t' b7 J- I( [8 U4 F6 {8 d7 L
INTERNET上的主机大部分都提供WWW、MAIL、FTP、BBS等网络信息服务,基本每一台主机都同时提供几种服务,一台主机为何能够提供如此多的服务呢?UNIX系统是一种多用户多任务的系统,将网络服务划分许多不同的端口,每一个端口提供一种不同服务,一个服务会有一个程序时刻监视端口活动,并且给予应有的应答。并且端口的定义已经成为了标准,例如:FTP服务的端口是21,TELENT服务的端口是23,WWW服务的端口是80等,如果还想了解更多请进行下面的步骤:
! s3 b7 o* ^ J5 ?" w- D! ?, `' i: u# ^5 X/ ^# M/ ~5 R
进入MS-DOS PROMPT ( Z- {! N* Q/ _5 D% |
( l _0 g1 E: c
C:\WINDOWS>edit services (回车) + |$ O U0 t, r7 s) `( T8 F3 z
慢慢阅读吧!不过很多的端口都没有什么用,不必把它们都记住!我们如何知道目标主机提供了什么服务呢?很简单用用于不同服务的应用程序试一试就知道了,例如:使用TELNET、FTP等用户软件向目标主机申请服务,如果主机有应答就说明主机提供了这个服务,开放了这个端口的服务,但我们现在只需知道目标主机的服务端口是否是“活”的,不过这样试比较麻烦并且资料不全,我会经常使用一些象PORTSCAN这样的工具,对目标主机一定范围的端口进行扫描。这样可以全部掌握目标主机的端口情况。现在介绍一个好工具,缺少好工具,就不能顺利完成工作。
/ ]5 Z Y* i' w9 p8 A5 [( R4 f
HAKTEK是一个非常实用的一个工具软件,它将许多应用集成在一起的工具,其中包括:PING、IP范围扫描、目标主机端口扫描、邮件炸弹、过滤邮件、FINGER主机等都是非常实用的工具。 * T8 c5 l# M& g8 g( X
. Q2 |8 N' k5 u) K9 h 完成目标主机扫描任务,首先告诉HAKTEK目标主机的位置,即域名或IP地址。然后选择端口扫描,输入扫描范围,开始扫描,屏幕很快返回“活”的端口号以及对应的服务。对资料的收集非常迅速完整。为什么掌握目标的服务资料?如果目标主机上几个关键的端口的服务都没有提供,还是放弃进攻的计划吧,不要浪费太多时间放在这个胜率不大的目标上,赶紧选择下一个目标。先看一个扫描实例:
/ L, c$ S9 {9 _3 _% |5 r1 Q) _' x5 y5 h9 u) `+ v
Scanning host xx.xx.xx, ports 0 to 1000
; O5 [; y9 V0 Z X- p! Z$ w4 b5 G" R/ k$ o2 h
Port 7 found. Desc='echo' G* m! j W3 g+ o) K
3 S: A6 I+ [) j' J Port 21 found. Desc='ftp' 0 s. T: {& `) b, s) a1 g9 S) x
! d9 y: q1 Y0 x4 X
Port 23 found. Desc='telnet'
1 Z' d3 g0 R2 v. J
1 ~3 N' D; v/ \# {4 e) \ Port 25 found. Desc='smtp' . U# ^; d* Q: q" u
. A6 h2 X* U) j, D+ d( K) A
Port 53 found. Desc='domain/nameserver' 5 g; p4 K: A; W0 M# X
4 ~0 r; O, l2 }! v3 N( D
Port 79 found. Desc='finger'
. `8 B& g: a$ B" R/ I
/ a. V3 E% S6 T! w/ `5 M Port 80 found. Desc='www' : \. x% M- w4 n# h
1 p8 l V6 j4 u( O; {5 M" a: M9 Q( h
Port 90 found. 1 o8 n3 U1 S4 n1 O1 B; X6 O: x
' [: r: Z1 v& P5 H" a
Port 111 found. Desc='portmap/sunrpc' ( Y4 E+ w4 D0 j' [* E* ^; P
8 P1 {/ U2 Z& c% _5 |( W' p Port 512 found. Desc='biff/exec'
7 r$ ?! s1 B. {* l" X$ s- t( Y- @4 I0 h! D4 ?6 b' L
Port 513 found. Desc='login/who'
' Y: D" m9 X$ P' |5 V- V; w
6 C k/ o8 Q8 Q! n3 ]3 F Port 514 found. Desc='shell/syslog'
" t h( m- P9 W: z: m6 T) n' @ k4 `9 ] u4 f6 ^9 x, W
Port 515 found. Desc='printer' 7 d) B% p) h( D5 z8 G
* g9 o$ V% X# L: V% J
Done! : r$ b( ~/ {- h" J$ T! a9 t& z8 F
如果系统主要端口是“活”的,也不要高兴太早,因为系统可能加了某些限制,不允许任何用户远程连接或不允许ROOT远程连接,或者进入后限制用户只能做指定的活动便又被强行中断,这仅仅指TELNET服务而言,其实还会遇到很多复杂的情况。
% v/ s1 W" a6 b6 c0 P4 F
' T3 H; \+ Q( M/ z4 u3 k5 c 这里只介绍目标主机是否开放了端口,而我们还不知目标主机使用的是什么系统,每一个端口的服务程序使用的是什么版本的系统,不要急,先联系一下HAKTEK工具吧!没有,快去下载吧!
) h/ F+ W5 T9 `1 k6 g. I2 N
& |+ ^; H* D7 z' u# M 3、系统分析
0 i$ ^, V' n; S$ n+ D) s1 S; j+ s/ ]- v4 i4 |* n
现在开始讲解如何了解系统,目标主机采用的是什么操作系统,其实很简单,首先打开WIN95的RUN窗口,然后输入命令:
1 p6 f+ z* z" {1 V
% \. Z( P+ w- k0 b! S TELNET xx.xx.xx.xx(目标主机)
% c6 r. D: h: W3 _5 U$ y; u
& m- U4 G, C; q5 w0 L2 ~! N) G6 O 然后[确定],看一看你的屏幕会出现什么? $ v' \& [1 A) J' i0 i& \
* u) L1 p+ T; B4 Q- Y) h Digital UNIX (xx.xx.xx) (ttyp1)
! r2 x+ ]$ P) H7 \2 z% ]* i( [1 E% I" U2 }
login: ! M+ X' Y7 |4 ?0 |6 J
# K4 R0 Z; r- {% @' i9 ?# d) D+ m 不用我说你也会知道你的目标主机和操作系统是什么啦!对,当然是DEC机,使用的是Digital UNIX啦!好,我们再看一个: 3 ?" |% U# n; [4 Q$ A% e
* `* C6 r+ o! v u/ Y5 O
有些系统将显示信息进行了更改,因此就不好判断其系统的信息,但根据一些经验可以进行初步的判断,它可能是HP Unix。 $ |, I" }2 n* L0 f+ [. C5 B( t0 \& V( S
2 x9 ~' s& k9 E @( f
另外利用上面介绍的工具HAKTEK,利用目标主机的FINGER功能也可以泄露系统的信息。
) K4 Y: }" Z2 H- o
- M2 J9 g$ x- P% B$ z2 T Establishing real-time userlist... (Only works if the sysadmin is a moron) 2 B! D3 U& E. j" n5 w
3 r% R: F+ R6 w# w ---[ Finger session ]-------------------------------------------------------
# I% O/ q5 E# K( p& _7 q3 c, v- \2 q& F$ d' ?8 K
Welcome to Linux version 2.0.30 at xx.xx.xx # D( G: s6 R+ O9 A' V" u
1 B- R1 t* A, E2 G& h! Y
...
! `+ h0 w8 X4 L) A# M9 }上面的这句话就已经足够! ' p* [) ?# Y; _$ w# S2 G
2 l* e9 l C# X
如何知道系统中其它端口使用的是什么服务?例如23、25、80等端口。 1 q5 m e7 W3 E
0 D* n1 l, v5 o! O; m* z 采用同样上面的手段,利用TELNET和本身的应用工具,FTP等。
" i/ F. O x* P7 @. y4 L% M+ ?# K2 k) \- l
使用TELNET是请将端口号作为命令行参数,例如:
* y; E* g' Q# Y# Y2 F
) U/ w1 j7 z$ G5 D' Z" [. [ telnet xx.xx.xx 25 1 G8 _- z8 a+ c$ b _
' V/ O5 @! A& F3 y: v
就会有类似下面的信息提供给你: ! B- b" s$ I9 c
4 }! g; ^$ x4 S$ s
220 xx.xx.xx Sendmail 5.65v3.2 (1.1.8.2/31Jan97-1019AM) Wed, 3 Jun 1998 13:50:47 +0900
# g; L2 w" D" ?; H, h# q7 ?$ e2 F% ]
这样很清楚目标主机Sendmail的版本。当然对很多端口和不同的系统根本没有用。
. ]& O. ~) l" s$ r3 D2 B& _% z7 r1 @6 N L8 u
因此需要对应的应用工具才能获得相应的信息。例如:
+ R: x& L7 i7 F' }9 Q
7 o2 R9 ]' @8 l0 r$ N- Y& T8 G Connected to xx.xx.xx.220 xx.xx.xx FTP server (Digital UNIX Version 5.60) ready. ( _' w) s$ F/ D) [# P% b
5 }& b( f( E& X' I. G User (xx.xx.xxnone)):
5 n: j( a3 V0 }3 C3 k, g$ y3 f6 L+ N
INTERNET上大多数是WWW主机,如何知道目标主使用的是什么样的WEB SERVER,介绍一个页面的查询工具,只要你告诉它目标主机的地址和WEB服务断口,它立刻会告诉你有关信息。 @; {$ W' p: [+ o4 H8 Q' J
. ^1 ]% r2 h' Z) _ Y 4、深入研究 & W6 y; f1 r% }$ H# ^0 ]. I
2 x% p E0 F* Y$ T( ~! O 上面介绍的内容都非常简单,多试几次便会轻松掌握。由于系统管理员对系统进行了一些限制,因此即使得到了这些信息也不能轻松地对系统攻击,还要进一步掌握情况。进行这些工作都是为下一步的工作做准备,破解UNIX主机最主要是想方设法获得UNIX的密码文件,通过破解口令,获得较高权限帐户的口令,主要是ROOT的口令。 |
|