linux下查找漏洞的n种兵器

阅读本文之前,我们还需要对Linux 系统的基本安全特性有一定的了解
  Linux 操作系统是一个开放源代码的免费操作系统,它不仅安全、稳定、成本低,而且很少发现有病毒传播,因此,Linux 操作系统一直被认为是微软Windows 系统的劲敌。近年来,随着Linux 操作系统在我国的不断普及,随着越来越多的服务器、工作站和个人电脑开始使用Linux 软件,当然,越来越多的安全发烧友也开始对这个操作系统发生了浓厚的兴趣。本文的目的是希望用户以最快的速度对Linux 下的精品Hack 软件功能及使用方法有一个比较细致全面的了解。今天我们先了解寻找肉鸡的N 种兵器。
  漏洞扫描器是一种自动检测远程或本地主机安全性弱点的程序。和Windows 系统一样,当黑客得到目标主机的清单后,他就可以用一些Linux 扫描器程序寻找这些主机的漏洞。这样,攻击者可以发现服务器的各种TCP 端口的分配、提供的服务、Web 服务软件版本和这些服务及安全漏洞。而对系统管理员来说,如果能够及时发现并阻止这些行为,也可以大大减少入侵事件的发生率。按常规标准,可以将漏洞扫描器分为两种类型:主机漏洞扫描器(Host Scanner )和网络漏洞扫描器(Network Scanner )。主机漏洞扫描器是指在系统本地运行检测系统漏洞的程序;网络漏洞扫描器则是指基于Internet 远程检测目标网络和主机系统漏洞的程序,下面,我们选取一些典型的软件及实例进行介绍。
  1 、基于主机的实用扫描软件
  (1 sXid
  sXid 是一个系统监控程序,软件下载后,使用“make install” 命令即可安装。它可以扫描系统中suidsgid 文件和目录,因为这些目录很可能是后门程序,并可以设置通过电子邮件来报告结果。缺省安装的配置文件为/etc/sxid.conf ,这个文件的注释很容易看懂,它定义了sxid 的工作方式、日志文件的循环次数等;日志文件缺省为/var/log/sxid.log 。出于安全方面的考虑,我们可以在配置参数后把sxid.conf 设置为不可改变,使用 chattr 命令把sxid.log 文件设置为只可添加。此外,我们还可以随时用sxid -k 加上 -k 选项来进行检查,这种检查方式很灵活,既不记入日志,也不发出 email.

2LSAT
  Linux Security Auditing Tool (LSAT) 是一款本地安全扫描程序,发现默认配置不安全时,它可以生成报告。LSATTriode 开发,主要针对基于RPMLinux 发布设计的。软件下载后,进行如下编译:
cndes$ tar xzvf last-VERSION.tgz

cndes$ cd lsat-VERSION
cndes$ ./configure
cndes$ make
  然后以root 身份运行:root# ./lsat 。默认情况下,它会生成一份名字叫lsat.out 的报告。也可以指定一些选项:
-o filename
指定生成报告的文件名
-v
详细输出模式
-s
不在屏幕上打印任何信息,只生成报告。
-r
执行RPM 校验和检查,找出默认内容和权限被改动的文件
  LSAT 可以检查的内容很多,主要有:检查无用的RPM 安装;检查inetdXinetd 和一些系统配置文件;检查SUIDSGID 文件;检查777 的文件;检查进程和服务;开放端口等。LSAT 的常用方法是用cron 定期调用,然后用diff 比较当前报告和以前报告的区别,就可以发现系统配置发生的变化。下面是一个测试中的报告片断:
****************************************
This is a list of SUID files on the system:
/bin/ping
/bin/mount
/bin/umount
/bin/su
/sbin/pam_timestamp_check
/sbin/pwdb_chkpwd
/sbin/unix_chkpwd
****************************************
This is a list of SGID files/directories on the system:
/root/sendmail.bak
/root/mta.bak
/sbin/netreport
****************************************
List of normal files in /dev. MAKEDEV is ok, but there
should be no other files:
/dev/MAKEDEV
/dev/MAKEDEV.afa
****************************************
This is a list of world writable files
/etc/cron.daily/backup.sh
/etc/cron.daily/update_CDV.sh
/etc/megamonitor/monitor
/root/e
/root/pl/outfile
  (3GNU Tiger
  这是扫描软件可以检测本机安全性,源自TAMUTiger (一个老牌扫描软件)。Tiger 程序可以检查的项目有:系统配置错误;不安全的权限设置;所有用户可写的文件;SUIDSGID 文件;Crontab 条目;Sendmailftp 设置;脆弱的口令或者空口令;系统文件的改动。另外,它还能暴露各种弱点并产生详细报告。
  (4Nabou
  Nabou 是一个可以用来监视系统变化的Perl 程序,它提供文件完整性和用户账号等检查,并将所有数据保存在数据库里。此外,用户也可以在配置文件中嵌入Perl 代码来定义自己的函数,执行自定义测试,操作其实十分方便。

5COPS
  COPS 是可以报告系统的配置错误以及其他信息,对linux 系统进行安全检查。其检测目标有:文件、目录和设备文件的权限检查;重要系统文件的内容、格式和权限;是否存在所有者为rootSUID 文件;对重要系统二进制文件进行CRC 校验和检查,看其是否被修改过;对匿名FTPSendmai 等网络应用进行检查。需要指出的是,COPS 只是监测工具,并不做实际的修复。这个软件比较适合配合其他工具使用,其优点在于比较擅长找到潜在的漏洞。
  (6strobe
  Strobe 是一个TCP 端口扫描器,它可以记录指定的机器的所有开放端口,运行速度非常快。它最初用于扫描局域网中公开的电子邮件,从而得到邮件用户信息。Strobe 的另一个重要特点是它能快速识别指定机器上正在运行什么服务,不足之处是这类信息量比较有限。
  (7SATAN
  SATAN 可以用来帮助系统管理员检测安全,也能被基于网络的攻击者用来搜索脆弱的系统。SATAN 是为系统和管理员设计的一个安全工具。然而,由于它的广泛性,易用性和扫描远程网络的能力,SATAN 也可能因为好奇而被用来定位有弱点的主机。SATAN 包括一个有关网络安全问题的检测表,经过网络查找特定的系统或者子网,并报告它的发现。它能搜索以下的弱点:
NFS——
由无权限的程序或端口导出。
NIS-——
口令文件访问。
Rexd——
是否被防火墙阻止。
Sendmail——
各种弱点。
ftp——ftp
wu-ftpdtftp 配置问题。
远程Shell 的访问—— 它是否被禁止或者隐藏。
X windows——
主机是否提供无限制的访问。
Modem——
经过tcp 没有限制拨号访问。
  (8IdentTCPscan
  IdentTCPscan 是一个比较专业的扫描器,可以在各种平台上运行。软件加入了识别指定TCP 端口进程的所有者的功能,也就是说,它能测定该进程的UID 。这个程序具有很重要的功能就是通过发现进程的UID ,很快识别出错误配置。它的运行速度非常快,可以称得上是入侵者的宠物,是一个强大、锐利的工具。
  2 、基于网络的实用扫描工具
  (1Nmap
  NmapNetwork Mapper ,它是在免费软件基金会的GNU General Public License (GPL) 下发布的。其基本功能有:探测一组主机是否在线;扫描主机端口,嗅探提供的网络服务;判断主机的操作系统。软件下载后,执行configuremakemake install 三个命令,将nmap 二进制码安装到系统上,就可以执行nmap 了。
  Nmap 的语法很简单,但功能十分强大。比如:Ping-scan 命令就是“-sP” ,在确定了目标主机和网络之后,即可进行扫描。如果以root 来运行NmapNmap 的功能会更加增强,因为超级用户可以创建便于Nmap 利用的定制数据包。使用Nmap 进行单机扫描或是整个网络的扫描很简单,只要将带有“/mask” 的目标地址指定给Nmap 即可。另外,Nmap 允许使用各类指定的网络地址,比如192.168.100.* ,是对所选子网下的主机进行扫描。
  Ping 扫描。入侵者使用Nmap 扫描整个网络寻找目标。通过使用“-sP” 命令,缺省情况下,Nmap 给每个扫描到的主机发送一个ICMP echo 和一个TCP ACK ,主机对任何一种的响应都会被Nmap 得到。
 Nmap 支持不同类别的端口扫描,TCP 连接扫描可以使用“-sT” 命令

 隐蔽扫描(Stealth Scanning) 。在扫描时,如果攻击者不想使其信息被记录在目标系统日志上,TCP SYN 扫描可帮你的忙。使用“-sS” 命令,就可以发送一个SYN 扫描探测主机或网络

如果一个攻击者想进行UDP 扫描,即可知哪些端口对UDP 是开放的。Nmap 将发送一个O 字节的UDP 包到每个端口。如果主机返回端口不可达,则表示端口是关闭的操作系统识别。通过使用“-O” 选项,就可以探测远程操作系统的类型。Nmap 通过向主机发送不同类型的探测信号,缩小查找的操作系统系统的范围。 Ident 扫描。攻击者都喜欢寻找一台对于某些进程存在漏洞的电脑,比如一个以root 运行的WEB 服务器。如果目标机运行了identd ,攻击者就可以通过“-I” 选项的TCP 连接发现哪个用户拥有http 守护进程。我们以扫描一个Linux WEB 服务器为例,使用如下命令即可:
  # nmap -sT -p 80 -I -O [url]www.yourserver.com[/url]
  除了以上这些扫描,Nmap 还提供了很多选项,这是很多Linux 攻击者的必备法宝之一,通过这个软件,我们就可以对系统了如指掌,从而为下面的攻击打下良好的基础。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值