生产环境-linux-网站被挂******经历

news/2024/5/9 13:48:58/文章来源:https://blog.csdn.net/u013958257/article/details/88059446

    安全与方便始终是对立的,然而运维人员忽视系统安全方面的建设,带来的后果将是非常严重的,以下是一台未上线服务器***后的***经历。

一、出现异常,排查原因

    发现异常是通过远端监控脚本发现访问网站时断时续,使用ssh工具连接会经常断掉连接,无法开展工作。

使用其他服务器对另一个网卡ip进行ssh连接,可以登录服务器,初步怀疑网卡异常或者流量异常。

    分别使用ifstat、iftop、nethogs查看连接异常网卡流量信息(对几个流量分析工具进行对比,各有千秋):

 

1使用ifstat

wget http://distfiles.macports.org/ifstat/ifstat-1.1.tar.gz

cd ifstat-1.1 ./configuremake make install  都是老套路

ifstat -a 加入监控lo

2使用iftop监控那个端口流量

 p  可以显示连接端口

3使用nethogs监控每个进程流量

yum换rpel源

wgethttp://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

yum install nethogs

nethogs  eth0


效果展示ifstat:

wKioL1T_qFqg5-OcAAC16sPBwKA186.jpg

wKiom1T_pz3wpdrpAAHDo9U17lM327.jpg

                        可以看到服务器流量异常时,流量的变化情况。

效果展示iftop:

 

wKiom1T_qmmBRmW7AAE_-DFRisI750.jpg

                        可以看到哪个PID进程导致流量过高

效果展示nethogs:

wKioL1T_rauRkStzAAKRclbUINE734.jpg

                        

 

二、查找真凶

通过上面分析,造成网站打不开的原因就是有进程大量发送数据包到某个ip(其实是阿里的服务器)的80端口,导致服务器网络阻塞,但是通过以上的工具,发现此***相当的狡猾,无法发使用的那个进程。

 

在使用netstat、ss通过端口获取***进程失败后(后面才知道netstat、ps等命令已经被***感染)

 

可以使用top工具,此***在大量发包时肯定会造成资源的消耗

通过锁定发现了两个进程有大量的嫌疑:

wKiom1T_pz6Tq7AGAAJRmr8HSS0718.jpg

 

通过ps命令找到进程执行的目录:

/usr/bin/sshupdate-bootsystem-insserv
/tmp/GuiBger

通过持续观察发现时有agent进程一闪而逝,在使用find / -name agent 后

# ll /usr/bin/bsd-port/
总用量 1120
-rwxr-xr-x. 1 root root 1135000 12月 25 11:20agent
-rwxr-xr-x. 1 root root       4 12月 25 11:20 agent.conf
-rw-r--r--. 1 root root      69 12月 25 11:50 conf.n
-rw-r--r--. 1 root root       0 10月  9 19:36 getty

 

     此时,相关的可以进程都找到了,通过测试,在网络阻塞时,删除sshupdate-bootsystem-insserv、GuiBger两个进程后,网络流量立即正常。而agent则怀疑是与***的通信进程,用于接收命令(瞎猜的)或者监控上面连个进程。

 

三、解决真凶 

    找到这3个进程并不意味结束,因为他们很可以是开机自启动程序,所以要在找到他们的开机自起的配置文件,我通过一个脚本实现这个功能:

#!/bin/sh
echo > /tmp/find_init.log
function ergodic(){forfile in `ls $1`doif[ -d $1"/"$file ] #如果 file存在且是一个目录则为真thenergodic$1"/"$fileelselocalpath=$1"/"$file #得到文件的完整的目录localname=$file       #得到文件的名字#做自己的工作.echo  $path rootkit_init=`cat$path | grep sshupdate | head -n 1`if[ -z $rootkit_init ];thenecho  "sed -i 's#$rootkit_init##g' $path">>  /tmp/find_init.logfifidone
}
INIT_PATH="/etc/init.d"
ergodic $INIT_PATH
cat /tmp/find_init.log

这个脚本功能很简单,通过遍历/etc/init.d目录所有文件,使用grep搜索进程名关键词,将含有这几个进程的文件找出来。

结果如下:

sed -i's#/usr/bin/sshupdate-bootsystem-insserv##g' /etc/init.d/DbSecurityMdt
sed -i's#/usr/bin/sshupdate-bootsystem-insserv##g' /etc/init.d/insserv

还真有自启动配置,迅速删除之

 

在删除这个***命令时会遇到无法删除的问题,这个很简单:

lsattr /usr/bin/sshupdate-bootsystem-insserv
查看文件的隐藏权限
-------i------e- sshupdate-bootsystem-insserv
发现被限制删除操作了
chattr -i  /usr/bin/sshupdate-bootsystem-insserv
取消影藏权限,然后再删除,完成。

 

    通过查看数据的表结构,发现***是从数据库***进服务器的,因为没有上线,方便开发测试在密码强度上使用了弱密码,所以被***破解了mysql的root账户密码,在mysql注入了***,一步一步***到服务器。数据库方面处理就不详细介绍了:

  1. 检查生产库的表结构,删除多余表。

  2. 然后备份所有生产库。

  3. 停止mysql

  4. 删除datadir目录所有文件

  5. 重启mysql

  6. 导入此前备份数据库

     

 

四、彻底扫除尾巴与隐患

    通过上面的步骤已经能解决服务器被***作为***工具的问题了,但是系统是否还有***隐藏,是否安全还需要加个问号。

    作者要介绍的方法是,使用linux系统的杀毒软件,作者使用的是avg,还是蛮好用的,被***感染的netstat、ps等命令和影藏文件就是通过avg扫描出来的。

    简单介绍下avg的安装和使用

avg杀毒软件{

下载地址:http://free.avg.com/us-en/download-free-all-product

 

启动 service avgd start

更新:avgupdate  

扫描:avgscan 加“要扫描的目录地址” 比如说sudo avgscan /etc

复制代码

-a 扫描内部档案

-l 自动愈合受感染的对象

-t 自动删除受感染的对象

-u 自动移动感染对象到隔离

    作者扫描时:avgscan /  

    avg会列出可以文件:找出删除即可,如果无法删除,上文有提过,先查看隐藏权限

 

五、总结

     最后总结下,之所以被***在linux服务器上挂马,是因为方便开发上线产品,关闭了iptables,数据库使用了弱密码,这个教训很深刻,所以使用iptables限制服务器的端口非常有必要,如果可能最好selinux开启。当然定时更换各账户密码也很重要!同时加强linux安全防护一定做到事前,在被******后处理会更麻烦,知道系统安全加强到一定程度,***很难***系统。

    因本人对安全方面涉及不深,此篇文章只是记实阐述我的处理经过,很多地方经验欠缺,如有大神,不吝赐教

    虚心学习才能进步,知识共享共同进步


 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_856633.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ASP.NET 网站导航概览

ASP.NET 网站导航特征可以为用户浏览网站的时候提供一致的导航方式。随着网站的发展,网站的页面会越来越多,链接的管理也开始变得更困难起来。ASP.NET 网站导航可以将页面链接集中存储到同一个位置,并在含有专用 Web 服务器控件的页面中以列表…

PHP curl 爬取反 爬的网站,请开启JavaScript并刷新该页.

总结 GET改成POST就好了 目标链接:http://www.pbc.gov.cn/zhengcehuobisi/125207/125213/125440/3876551/index.html 笔者查阅很多资料,大部分人说这样子需要模拟浏览器访问,根本原因是因为cookie不是动态生成的或者不是有效的,…

Web网站中从Sybase数据库读取的中文显示为乱码的解决方法

需要修改作为网站服务器的机器上的 Sybase 数据库 ODBC 数据源中的属性设置。如下图所示。(注:该机上安装的 Sybase 客户端版本为 12.5.0 ) 第一步,打开 ODBC 数据源管理器,选中已设置的系统 DSN : Sybase …

[关键词排名]提高新站排名的8个SEO建议

搜索引擎使用一个特定的算法,决定在搜索结果的第一页上出现哪些网页,这样用户就可以找到与他们的搜索相关的最佳结果。   对一个全新的网站进行排名是一项艰难的工作,但是遵循搜索引擎优化的指导方针,一个新的网站同样可以提高它…

【Python】不完善的批量网站运行检测小工具

使用tkinter制作了图形界面的小工具,主要是通过requests获取网站的状态码200,获取到其他的状态码则判定为运行异常。 1、可自行输入检测文件位置,.txt(文本格式,一行一个网址) 2、可自行输入谷歌驱动程序位…

不要再说SEO没出路了,SEO的十种赚钱方式让你走上小康

我深深的想要通过的自己的SEO技术赚钱。其实,掌握一门技术是次要方面,学会把技术变现才是重中之重,所以你说学习SEO重要吗?挺重要,但绝不是最重要的。学SEO的赚钱方式才是最重要的。 那么SEO都有哪些赚钱方式呢?我罗列了十种赚钱…

SEO为何见效那么慢,其实你对SEO理解都不一定对

SEO SEO和SEM最大的区别的就是除了资金投入外就是见效时间问题了,SEO优化的是一个循序渐进的过程,需要时间的积累和搜索引擎的检验。到现在为止仍然有很多对SEO没有一个正确的认知,也有很多人没搞清楚就入坑SEO行业了。 一、帮助老板正确认识…

利用好这些代码把SEO优化做到极致,最后一个你肯定没用

SEO 本期主题,利用好HTML代码让网站优化更上一层楼, 很多人认为网站优化和代码没有什么关系,其实不然,代码和优化也有着千丝万缕的关系。如果代码这一步不弄好也会影响后期的优化。尤其是最后一个还多网站都没做这一步 一、titl…

什么是黑帽SEO?

什么是黑帽SEO?黑帽SEO的作用是什么?做黑帽的方法又有哪些。现在的你是不是有许多相关的问号产生?从字面上理解,黑帽SEO指的是利用“违规”方式从事搜索引擎优化服务,说到黑帽SEO,我们会主观的以为黑帽就是…

一起来聊聊SEO的门槛高不高

之前Ourboke联盟曾讲过,自媒体博客门槛很低,也很高,这句话同样适用于搜索引擎(SEO)优化。SEO门槛很低,也很高,正如相声大师郭德纲说的那样,说相声门槛很低,也很高&#x…

SEO从业者该何去何从呢?

SEO到底还有没有前途?如果只是以百度平台为流量来源的传统SEO的话,基本没有前途了!不管你是2C业务还是2B业务。 尤其是新网站还想从百度获取免费自然SEO流量的话,那基本上废了。但是,如果你是以百度SEO平台为流量来源其…

转载:网站分析与SEO效果的评估

本文截取自:网站分析在中国 原文地址:http://www.chinawebanalytics.cn/use-web-analytics-to-evaluate-seo/ 对于一个网站而言,SEO(Search Engine Optimization,搜索引擎优化)的重要性不言而喻。搜索引擎带来的自然流量有几个好…

谷歌网站管理员工具竟然有提醒wordpress升级的功能

很久没有登录谷歌网站管理员工具了,今天登录发现有两条消息提醒标题竟然是《WordPress有更新》: 好奇下打开一看,原来是我几年前用国外的免费空间搭建的一个二级域名wordpress博客网站引起的。全文如下: 尊敬的 http://&#xff1…

MVC4网站发布到windows server 2003服务器

在windows server 2003上部署MVC4的网站,需要进行以下工作 用VS2013新建项目 在创建项目的时候选择的矿建为.NET Framework4,然后选择【ASP.NET MVC4 Web应用程序】 项目开发完成之后右键项目 选择【发布】 选择【新建配置文件】 填写自命名一个配置文件…

网站架构

摘要:何为大型网站大型网站特性既然说的是大型网站架构,那么架构的背后自然是解决人因面对大型网站特性而带来的问题。这样可以先给大家说下大型网站的特性,这些特性带来的问题就是人要解决的问题:高并发、大流量:PV .…

网站架构

摘要:何为大型网站大型网站特性既然说的是大型网站架构,那么架构的背后自然是解决人因面对大型网站特性而带来的问题。这样可以先给大家说下大型网站的特性,这些特性带来的问题就是人要解决的问题:高并发、大流量:PV .…

leaflet自定标签json_做一个好看的数据展示「小标签」,在个人网站实时展示你的粉丝数

如果你浏览过一些 GitHub 的开源项目,你一定见过很多 README 文档中都会出现的五颜六色、各式各样的「小牌子」。 最初,这些「小牌子」的主要作用是为了显示「某个 GitHub 项目」的「某种状态」,比如项目的编译是否成功、文档是否…

如何将vs2012项目的网站布置到iis上,实现内网访问

1首先获得你本机的ip地址 可以通过命令行输入 ipconfig/all 2配置电脑的iis(前提是你已经安装了) 右击我的电脑选择管理 右键网站添加网页 会出来上面的对话框 选择直接的项目web路径就ok ip地址和选自己的就行 端口随便选一个合法的。 有时候配置了出不…

php java session共享_PHP 实现多网站共享用户SESSION 数据解决方案

一、问题起源 稍大一些的网站,通常都会有好几个服务器,每个服务器运行着不同功能的模块,使用不同的二级域名,而一个整体性强的网站,用户系统是统一的,即一套用户名、密码在整个网站的各个模块中都是可以登录…

腾讯云服务器会自动备份吗,腾讯云服务器建站教程 – 定时快照备份和镜像备份的功能策略 | 老左笔记...

我们无论在使用哪家云服务器或者主机的时候,都需要做的就是数据备份。如果你技术能力一般的,那就用搬运办法FTP下载到本地,如果你技术能力可以的,那就可以用一键备份脚本到本地或者第三方服务器或者对象存储的方式。当然&#xff…