因为云服务器老是被植入挖矿木马,所以多少学习了如何发现异常的一些知识点。整理如下:
异常:发现/var/log/btmp文件逐渐增大,且文件占据空间较大。
/var/log/btmp用于记录错误的登录尝试
可能存在暴力破解,即使用密码字典登录ssh服务,此日志需使用 lastb 打开
(1)查看登录次数>100的IP
(2)防火墙屏蔽单个恶意登录的IP
添加完成后,用 service iptables status 可以查看iptables服务的当前状态。
(3)防火墙屏蔽大量恶意登录的IP
使用 ipset 命令。
①创建IP集IPlimit,增加IP限制为10万条
②为IP黑名单添加前缀参数
这些IP我抽查了几个,有来自英国、德国、美国、印度,甚至我国某些省市。
③ 使用ipset 命令加载这个文件到IP集
④创建iptables规则来屏蔽IP集中的IP
⑤查看iptables防护墙的filter表是否添加成功
⑥清理/var/log/btmp文件
iptables只是三种ip段,
封110.0.0.0—110.255.255.255 ip段的方法是在源ip里输入,110.0.0.0/8;
封110.110.0.0—110.110.255.255 ip段的方法是在源ip里输入,110.110.0.0/16;
封110.110.110.0—110.110.110.255 ip段的方法是在源ip里输入,110.110.110.0/24;
(1)加入开机自启动
chkconfig iptables on
(2)重启服务
service iptables restart
查看如下 两个日志对我们了解系统当时做了什么 *** 作有帮助。/var/log/messages
记录系统整体信息,一般来讲各类报错信息都会在这个日志中记录。
/var/log/cron
记录系统定制任务的日志。
首先我要定位系统异常的时间点,很简单,我打开我的程序的目录,找到运行日志打开一看
可以直接看出来到7:20就没有了,这说明程序运行到这个时间点之后就没有在运行,基本上就是这个时间点异常了。
那么系统日志我们就按着这个时间点去看。
首先打开cron日志找到对应的时间点,看了下似乎没什么异常之处。
接下来看messages日志,找到对应的时间点之后发现了异常。
从7:20开始系统发生异常,然后桌面终端的情况被记录到/var/spool/abrt/ccp-2017-11-09-07:20:02-5142.new/coredump
然后被程序调用的网卡被卸载掉,紧接着系统写了一个mail。
上面的日志中有一个error,根据这个报错百度了下(这里我要吐槽百度,怀念google),大概意思是error 4的意思是用户态程序内存访问越界。
error number是由三个字位组成的,从高到底分别为bit2 bit1和bit0,所以它的取值范围是0~7。
bit2: 值为1表示是用户态程序内存访问越界,值为0表示是内核态程序内存访问越界
bit1: 值为1表示是写 *** 作导致内存访问越界,值为0表示是读 *** 作导致内存访问越界
bit0: 值为1表示没有足够的权限访问非法地址的内容,值为0表示访问的非法地址根本没有对应的页面,也就是无效地址
error number是4, 转成二进制就是100, 即bit2=1, bit1=0, bit0=0, 按照上面的解释,我们可以得出这条信息是由于用户态程序读 *** 作访问越界造成的。
但是具体是什么程序造成的我还没弄清楚,但是用户态程序也就是我运行的程序也就那么几个,逐个排查后应该可以得到结论。后续在慢慢弄。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)