安全检测Unix和Linux服务器安全设置入门精讲

其实每一个黑客都有自己独到的方法。笔者对于入侵网站服务器的资料收集了很多,但是因为实际情况的不同,往往造成许多方法的失效;由此可见,每一个网站的情况都不同,需要入侵者区分对待。假设深圳的线路比北京的线路要好的多,从而给了词典穷举很大的方便,深圳用户就可以依靠这个优势在线攻击口令,作为北京的用户就需要优先考虑其它办法了。针对这么多的入侵手段,笔者参考H ackalot先生这位黑客界名人的一篇文章给大家介绍一下入侵网站的基本步骤。  
分析一部分的主页被黑的事例可以发现使用入侵者最热衷于入侵Web服务器和FTP服务器,因为相对来说这是最简单的两种途径。在假设读者对U NIX系统和WEB SERVER的知识不曾了解的情况下,笔者给出下面的步骤。  
一、了解要入侵的系统

现在网络上用作服务器的操作系统以UNIX和Linux为主流,如果要入侵这些系统则必须对它们有一个了解。  
大部份在 DOS 上使用的指令在 UNIX 及 Linux 上都有对应的指令(因为早期的dos开发借鉴了UNIX),以下列出在使用 SHELL帐号 (shell account)时最主要的一些指令对应的dos指令:  
HELP=HELP  
CP=COPY  
MV= MOVE  
LS= DIR  
RM =DEL  
CD=CD  
要看谁同 r也在该系 y上用户可以键入 WHO 指令,要知道系 y上某一位使用者的资料, 可以 I入 FINGER。这些基本的 UNIX 指令可以让你得到你正使用系 y的信息。

二、破解密码  
在UNIX操作系统中, 所有系统使用者的密码都存放在一个文件中,这个文件存放在 /etc这个目录下面, 它的文件名就叫做passwd。如果读者认为所要做的工作就是拿到这个文件按照上面的密码登陆系统的话那就大错特错了。UNIX和Linux下的p asswd文件是特殊的,在它里面所有帐号的密码都已经经过重新编译的(也就是前面说过的DES加密方法),而且这些密码所进行的都是单向编译( one-way encrypted),也就是说没有办法可以反编译它的(decrypt)。  
但是还是有些程序可以得到这些原始的密码。笔者向大家推荐一个破解密码的程序"Cracker Jack",它也是一个使用字典来对字典文件进行穷举的软件。首先"Cracker Jack"会把字典文件里的每一个值进行编译,然后将编译过的值与密码文件中的内容进行比较,得到相同的结果就会报告对应的未经编译密码。这个软件巧妙的绕过密码无法反编译的限制,使用穷举比较获得密码。使用这种原理获得密码的工具有许多,读者可以到网络上去搜寻一下。

三、获得密码文件  
这是最困难的一部分。很明显,如果管理员有那么一个密码文件的话他当然不会放在那里让其它人舒舒服服的拿到的。入侵者必须找到好方法以不进入系统的方式拿到密码文件。这里笔者向大家介绍两种方法,大家可以试试,有可能会成功。  
1.tc目录在FTP服务上不会被锁住,入侵可以用FTP client程序使用anoymously匿名帐号登陆,然后检查一下/etc/passwd是否为匿名设置了被读取的权限,如果有马上备份下来使用软件解码。  
2.些系统中,/cgi-bin目录下会有个叫PHF的文件,如果准备入侵的服务器上有的话那就要方便的多了。因为PHF允许使用者对网站系统里的文件作远端读取,以此为据,用户可以使用浏览器抓取p asswd文件,只要在浏览器地址栏中键入URL:http://xxx.xxx.xxx/cgi-bin/phf?Qalias=x%0a/bin/cat%20/etc/passwd,其中xxx.xxx.xxx 是要入侵的网站名。  
如果这两种方法都行不通的话,那入侵者必须实施其它的办法了。  
在有些情况下入侵者找到的密码文件的第二部分是X、!或者*,那么说明该密码文件已经被锁死,这是系统管理员使用的加强安全的手段之一。但是将密码文件完全隐藏起来的情况是不太有的。通常情况下都会有未经锁死的密码文件备份在系统中,这样入侵者就可以加以利用,比如:入侵者通常会寻找/ etc/shadow目录或类似的目录,看能否找到密码文件的备份。

四、建立自己的shell帐号  
经过二、三两个关键的步骤入侵者终于拿到了关键的密码文件,并且破解出了密码。现在可以运行TELNET程序,登陆主机了。当连上服务器时服务器会向你显示自己的一些信息,通常是U NIX、linux、 aix、 irix、 ultrix、 bsd 甚至是 DOS 和VAX/Vms;然后是Login提示符出现在屏幕上,这时键入得来的帐号和密码即可登陆系统。此时入侵者就可以利用自己的UNIX知识做自己喜欢做的事了。

最后对一份密码文件做一个分析,该文件内容如下:  
root:1234aaab:0:1:Operator:/:/bin/csh  
nobody:*:12345:12345::/:  
daemon:*:1:1::/:  
sys:*:2:2::/:/bin/csh  
sun:123456hhh:0:1:Operator:/:/bin/csh  
bin:*:3:3::/bin:  
uucp:*:4:8::/var/spool/uucppublic:  
news:*:6:6::/var/spool/news:/bin/csh  
audit:*:9:9::/etc/security/audIT:/bin/csh  
sync::1:1::/:/bin/sync  
sysdiag:*:0:1:Old System  
Diagnostic:/usr/diag/sysdiag:/usr/diag/sysdiag/sysdiag  
sundiag:*:0:1:System  
Diagnostic:/usr/diag/sundiag:/usr/diag/sundiag/sundiag  
tom:456lll45uu:100:20::/home/tom:/bin/csh  
john:456fff76Sl:101:20:john:/home/john:/bin/csh  
henry:AusTs45Yus:102:20:henry:/home/henry:/bin/csh  
harry:SyduSrd5sY:103:20:harry:/home/harry:/bin/csh  
steven:GEs45Yds5Ry:104:20:steven:/home/steven:/bin/csh  
+::0:0:::

其中以":"分成几个栏位,比如: tom:456lll45uu:100:20:tomchang:/home/tom:/bin/csh的含义是:  
User Name: tom  
Password: 456lll45uu  
User N 100  
Group N 20  
Real Name: tom chang  
Home Dir: /home/tom  
Shell: /bin/csh

读者可以发现以上诸如nobody、 daemon、 sys、 bin、 uucp、 news、 audIT、 sysdiag、sundiag 等的密码栏位都是*,也就是说这些帐号的密码都已锁死,无法直接利用。

值得注意的是,许多系统在首次安装后会有一些缺省帐号和密码,这给投机主义的黑客带来方便,以下就是一些UNIX下缺省的帐号和密码。  
ACCOUNT PASSWORD  
----------- ----------------  
root root  
sys sys / system / bin  
bin sys / bin  
mountfsys mountfsys  
adm adm  
uucp uucp  
nuucp anon  
anon anon  
user user  
games games  
install install  
reboot 供"command login"使用  
demo demo  
umountfsys umountfsys  
sync sync  
admin admin  
guest guest  
daemon daemon

其中 root mountfsys umountfsys install (有 r候 sync也是) 等都是root级别的帐号, 也就是拥有了sysop (系统管理员)的权限。

最后有必要介绍一下UNIX的日志文件。很多入侵者不希望侵入的电脑追踪他们,那到底如何做那。  
系统管理员主要依靠系统的LOG,即我们时常所说的日志文件来获得入侵的痕迹及入侵者进来的IP和其他信息。当然也有些管理员使用第三方工具来记录侵入电脑的信息,这里主要讲的是一般U NIX系统里记录入侵踪迹的文件。

UNIX系统有多个版本,各个系统有不同的LOG文件,但大多数都应该有差不多的存放位置,最普通的位置就是下面的这几个:  
/usr/adm,早期版本的UNIX;  
/var/adm,新一点的版本使用这个位置;  
/var/log,一些版本的Solaris,Linux BSD,Free BSD使用这个位置;  
/etc,大多数UNIX版本把utmp放在此处,一些也把wtmp放在这里,这也是 syslog.conf的位置。

下面列举一些文件的功能,当然他们也根据入侵的系统不同而不同。  
acct 或 pacct,记录每个用户使用的命令记录;  
access_log,主要使用来服务器运行了NCSA HTTPD,这个记录文件会有什么站点连接过你的服务器;  
aculog,保存着你拨出去的MODEMS记录;  
lastlog,记录了用户最近的登陆记录和每个用户的最初目的地,有时是最后不成功登陆的记录;  
loginlog,记录一些不正常的登陆记录;  
messages,记录输出到系统控制台的记录,另外的信息由syslog来生成;  
securITy,记录一些使用UUCP系统企图进入限制范围的事例;  
sulog,记录使用su命令的记录;  
utmp,记录当前登录到系统中的所有用户,这个文件伴随着用户进入和离开系统而不断变化;  
utmpx,UTMP的扩展;  
wtmp,记录用户登录和退出事件;  
syslog,最重要的日志文件,使用syslogd守护程序来获得。  
日志信息:  
/dev/log,一个UNIX域套接字,接受在本地机器上运行的进程所产生的消息;  
/dev/klog,一个从UNIX内核接受消息的设备;  
514端口,一个INTERNET套接字,接受其他机器通过UDP产生的syslog消息;  
Uucp,记录的UUCP的信息,可以被本地UUCP活动更新,也可有远程站点发起的动作修改,信息包括发出和接受的呼叫,发出的请求,发送者,发送时间和发送主机;  
lpd-errs,处理打印机故障信息的日志;  
ftp日志,执行带-l选项的ftpd能够获得记录功能;  
httpd日志,HTTPD服务器在日志中记录每一个WEB访问记录;  
history日志,这个文件保存了用户最近输入命令的记录;  
vold.log,记录使用外接媒介时遇到的错误记录。

以上介绍了一下入侵服务器的主要步骤,读者现在应该对它有一些基础的认识了。需要再次强调的是如果读者对UNIX系统缺乏了解的话那是绝对不可能掌握它的。

(0)

相关推荐

  • 教你如何搭建一个安全的Linux服务器教程

    要建立一个安全Linux服务器就首先要了解Linux环境下和网络服务相关的配置文件的含义及如何进行安全的配置.在Linux系统中,TCP/IP网络是通过若干个文本文件进行配置的,也许你需要编辑这些文件来完成联网工作,但是这些配置文件大都可以通过配置命令linuxconf (其中网络部分的配置可以通过netconf命令来实现).下面介绍基本的 TCP/IP网络配置文件. * /etc/conf.modules文件 该配置文件定义了各种需要在激活时加载的模块的参数信息.这里主要着重讨论关于网卡的配置

  • linux服务器基本安全配置手册

    假如你想要搭建一个Linux服务器,并且希望可以长期维护的话,就需要考虑安全性能与速度等众多因素.一份正确的linux基本安全配置手册就显得格外重要.在我本文中就向大家介绍在edhat/centos 4,5下的Linux服务器基本安全配置手册. 安装注意 1.删除系统特殊的的用户帐号: 禁止所有默认的被操作系统本身启动的且不需要的帐号,当你第一次装上系统时就应该做此检查,Linux提供了各种帐号,你可能不需要,如果你不需要这个帐号,就移走它,你有的帐号越多,就越容易受到攻击. #为删除你系统上的

  • linux服务器下PHPCMS v9 安全配置详解

    一.目录权限设置很重要:可以有效防范黑客上传木马文件. 如果通过 chmod 644 * -R 的话,php文件就没有权限访问了. 如果通过chmod 755 * -R 的话,php文件的权限就高了. 所以就需要分开设置目录权限和文件权限: linux 服务器权限:经常要用到的命令: find /path -type f -exec chmod 644 {} \; //设置文件权限为644 find /path -type d -exec chmod 755 {} \; //设置目录权限为755

  • Linux 服务器安全配置

    第一部分:RedHat Linux篇 1.概述 Linux服务器版本:RedHat Linux AS 对于开放式的操作系统---Linux,系统的安全设定包括系统服务最小化.限制远程存取.隐藏重要资料.修补安全漏洞.采用安全工具以及经常性的安全检查等.本文主要从用户设置.如何开放服务.系统优化等方面进行系统的安全配置,以到达使Linux服务器更安全.稳定. 2.用户管理 在 Linux系统中,用户帐号是用户的身份标志,它由用户名和用户口令组成.系统将输入的用户名存放在/etc/passwd文件中

  • 服务器安全狗Linux版软件安装使用说明

    服务器安全狗Linux版(SafeDog for Linux Server)是为Linux服务器开发的一款服务器管理软件,它集成了系统参数快速设置,系统运行状态直观展示,系统状态实时监控,常用服务.设备或软件的快速安装和配置等功能,帮助管理员快速直观地管理服务器.本软件还提供了纯字符界面下的界面交互接口和详细的操作指引,使得管理员对服务器的状态更加了解,管理和配置服务器也更加简单. 系统快速配置 1.网络接口配置 界面显示系统各个网卡的IP,子网掩码,MAC地址,IP设置方式,网卡激活状态等信息

  • linux Apache服务器系统安全设置与优化第1/3页

    Apache服务器的设置文件位于/usr/local/apache/conf/目录下,传统上使用三个配置文件httpd.conf, access.conf和srm.conf, 来配置Apache服务器的行为.httpd.conf提供了最基本的服务器配置,是对守护程序 httpd如何运行的技术描述;srm.conf是服务器的资源映射文件,告诉服务器各种文件的MIME类型,以及如何支持这些文件; access.conf用于配置服务器的访问权限,控制不同用户和计算机的访问限制;这三个配置文件控制着服务

  • 安全检测Unix和Linux服务器安全设置入门精讲

    其实每一个黑客都有自己独到的方法.笔者对于入侵网站服务器的资料收集了很多,但是因为实际情况的不同,往往造成许多方法的失效:由此可见,每一个网站的情况都不同,需要入侵者区分对待.假设深圳的线路比北京的线路要好的多,从而给了词典穷举很大的方便,深圳用户就可以依靠这个优势在线攻击口令,作为北京的用户就需要优先考虑其它办法了.针对这么多的入侵手段,笔者参考H ackalot先生这位黑客界名人的一篇文章给大家介绍一下入侵网站的基本步骤.   分析一部分的主页被黑的事例可以发现使用入侵者最热衷于入侵Web服

  • CentOS Linux服务器安全设置

    我们必须明白:最小的权限+最少的服务=最大的安全 所以,无论是配置任何服务器,我们都必须把不用的服务关闭.把系统权限设置到最小话,这样才能保证服务器最大的安全.下面是CentOS服务器安全设置,供大家参考. 一.注释掉系统不需要的用户和用户组 注意:不建议直接删除,当你需要某个用户时,自己重新添加会很麻烦. cp /etc/passwd /etc/passwdbak #修改之前先备份 vi /etc/passwd #编辑用户,在前面加上#注释掉此行 #adm:x:3:4:adm:/var/adm

  • 教你如何:入侵UNIX和Linux服务器入门

    在讨论这部分知识前,读者需要知道--入侵网站是非法的:但是在网络上找到网站的入侵漏洞并通知该网站是受到欢迎的.为什么要这样寻找入侵漏洞或入侵哪,著名的黑客H ackalot说过"入侵网站是利用所学的知识来学习新的知识的一种办法",这也就是中国人所常说的"温故而知新". 尽管为服务器设计软件的软件工程师们想方设法提高系统的安全性,然而由于系统管理员的水平参差不齐或安全意识底下,往往给黑客提供了入侵的机会. 其实每一个黑客都有自己独到的方法.笔者对于入侵网站服务器的资料

  • linux 服务器安全设置教程

    一.系统安全记录文件 操作系统内部的记录文件是检测是否有网络入侵的重要线索.如果您的系统是直接连到Internet,您发现有很多人对您的系统做Telnet/FTP登录尝试,可以运行"#more /var/log/secure grep refused"来检查系统所受到的攻击,以便采取相应的对策,如使用SSH来替换Telnet/rlogin等. 二.启动和登录安全性 1.BIOS安全IXPUB 设置BIOS密码且修改引导次序禁止从软盘启动系统. 2.用户口令 用户口令是Linux安全的一

  • 阿里云linux服务器安全设置(防火墙策略等)

    首先需要进行linux的基础安全设置,可以先参考这篇文章 http://www.jb51.net/article/94842.htm 1.Linux系统脚本 #!/bin/bash ######################################### #Function: linux drop port #Usage: bash linux_drop_port.sh #Author: Customer Service Department #Company: Alibaba Clo

  • linux服务器后台设置小技巧

    1.如何快速安装游戏服务器:  发布目录所有游戏添加之后,在游戏发布目录会生成一个gamelist.ini,里面就是记录这个发布目录的所有游戏信息.如果装其他游戏资源服务器时,直接将这些游戏按原来结构放到一个发布目录下,然后直接将gamelist.ini放到发布目录中即可.或者将发布目录下所有文件克隆,作为备份. 2.游戏图标不满意?  可以通过以下方式自定义游戏图标:  (2-1)在游戏目录中,制作一个只包含一个32*32的真彩色图标文件ico.命名为:游戏名称.ico(游戏名称就是在客户端看

  • windows安装openssh并通过生成SSH密钥登录Linux服务器

    SSH的英文全称是Secure SHell.通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS和IP欺骗.还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度.SSH有很多功能,它既可以代替telnet,又可以为ftp.pop.甚至ppp提供一个安全的"通道" 最初SSH是由芬兰的一家公司开发的.但是因为受版权和加密算法的限制,现在很多人都转而使用OpenSSH OpenSSH是SSH协议的

  • 详解linux ntp服务器时间同步设置

    linux ntp服务器时间同步设置 时间同步这个需求在很多地方都有.比如安装cm和cdh的话,需要ntp时间同步,否则会出现红色警告 这里主要是设置一台服务器作为主服务器,让其他机器同步这台机器的时间,而且是配置的本地时间,没有同步internet时间,因为很多时候服务器不能联网 首先我们这里设置2台机器,主机器为192.168.5.102,另外一台为192.168.5.103 首先设置主机器 编辑/etc/ntp.conf文件 在里面加上 restrict 127.0.0.1 # 开启内部递

  • BT宝塔Linux服务器管理助手架设VPS面板(安装及初始设置应用)

    老左初次看到宝塔服务器管理助手软件的信息应该是上周在小夜博客那边看到广告的,从这款软件介绍应该是在这两年逐步在更新.升级,目前拥有Linux和Windows环境版本,其中我们大部分用户需要的Linux系统版本处于内侧版本,但是功能对于普通的建站需求应该是比较齐全的. 从用户需求角度看,目前国内的Linux服务器管理面板虽然大大小小有很多个,但是要么是开始付费,要么版本过老很久不更新,包括老左在之前有介绍的AppNode面板也是收费版本,但是BT宝塔面板是免费的,虽然目前处于测试版本,我还是准备体

  • Tomcat在Linux服务器上的BIO、NIO、APR模式设置方法

    一.BIO.NIO.AIO 先了解四个概念: 同步 : 自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写). 异步 : 委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读写委托给OS处理,需要将数据缓冲区地址和大小传给OS(银行卡和密码),OS需要支持异步IO操作API). 阻塞 : ATM排队取款,你只能等待(使用阻塞IO时,Java调用会一直阻塞到读写完成才返回). 非阻塞 : 柜台取款,取个号,然后坐在椅子上做其它事,等号广播会通知你办理,没到

随机推荐