php发展

首页 » 常识 » 问答 » linux应急常用命令技巧总结
TUhjnbcbe - 2024/9/8 9:12:00
治疗白癜风第一的医院 http://www.xftobacco.com/m/
北京哪家医院治疗白癜风安全 http://baidianfeng.39.net/a_zhiliao/240901/r3sap6s.html

不输的办法只有一个,就是不上场

常用命令

top#命令可以直接看到进程实时情况。psaux--sort=pcpu

head-10#查看cpu占用率前十的进程,有时候可以发现top发现不了的东西netstat-anpl#检查当前存在的连接与监听端口ps-ef#查看当前系统上运行的所有进程与其使用的命令w#查看活动用户who#查看当前登录用户(tty本地登陆pts远程登录)/var/log/utmplast#查看用户登录日志,查看我们系统的成功登录、关机、重启等情况/var/log/wtmplastb#查看登陆失败的用户日志/var/log/btmplastlog#查看所有用户登陆日志/var/log/lastloglsof-i:#查看谁在使用某个端口lsof-nPi查看内部对外的网络连接Strace集诊断、调试、统计一体的工具。`strace-f-ppid`查看进行的行为busybox是应急常用的工具。如果系统命令被替换了可以使用此命令来查看系统相关信息

查看History详细

设置history显示时间和用户名,更方便排查谁在什么时间执行了什么

exportHISTTIMEFORMAT=%F%T`whoami`#设置history显示时间和用户名

查看文件改动

检查最近创建的php、jsp文件和上传目录例如要查找24小时内被修改的JSP文件:

find./-mtime0-name*.php

stat/etc/passwd#查看密码文件上一次修改的时间,如果最近被修改过,那就可能存在问题。cat/etc/passwd

grep-vnologin#查看除了不可登录以外的用户都有哪些,有没有新增的cat/etc/passwd

grepx:0#查看哪些用户为root权限,有没有新增的cat/etc/passwd

grep/bin/bash#查看哪些用户使用shell

与测试环境目录做对比

diff-r{生产dir}{测试dir}

账号

1、查询特权用户特权用户(uid为0)root

drunk:~#awk-F:$3==0{print$1}/etc/passwdroot2、查询可以远程登录的帐号信息root

drunk:~#awk/\$1

\$6/{print$1}/etc/shadowroot:$6$xJe1PRKN$U33UxLJ6zr3Iar4TQuaLdLSu9cmEo3DfKwE6mBmzq2Du5QeW5UOawPADMpWbPrCSALA6cU6FSU8IcE9XwL1::0::7:::root

drunk:~#

域名hosts

有一些挖矿程序会修改

/etc/hosts

文件,请看一下其中内容是否被更改过前两天在另外的项目组上发现的某个挖矿病毒就会修改hosts文件这是从那台服务器上提取的一些恶意的配置内容

0.0.0.0aliyun.one0.0.0.0evle.org

日志

secure是应急中最常用的文件,主要记录系统存取数据的文件。日志默认存放位置:/var/log/,日志总是能发现一些蛛丝马迹。

注:

secure

在一些较新的linux已经被

rsyslog

替换,下面命令中的

/var/log/secure

可以尝试换成

/var/log/auth.log

1、定位有多少IP在爆破主机的root帐号:grepFailedpasswordforroot/var/log/secure

awk{print$11}

sort

uniq-c

sort-nr

more定位有哪些IP在爆破:grepFailedpassword/var/log/secure

grep-E-o(25[0-5]

2[0-4][0-9]

[01]?[0-9][0-9]?)\.(25[0-5]

2[0-4][0-9]

[01]?[0-9][0-9]?)\.(25[0-5]

2[0-4][0-9]

[01]?[0-9][0-9]?)\.(25[0-5]

2[0-4][0-9]

[01]?[0-9][0-9]?)

uniq-c爆破用户名字典是什么?grepFailedpassword/var/log/secure

perl-ewhile($_=){/for(.*?)from/;print$1\n;}

uniq-c

sort-nr2、登录成功的IP有哪些:grepAccepted/var/log/secure

awk{print$11}

sort

uniq-c

sort-nr

more或者last命令,它会读取位于/var/log/wtmp的文件,并把该文件记录的登录系统的用户名单,全部显示出来。登录成功的日期、用户名、IP:grepAccepted/var/log/secure

awk{print$1,$2,$3,$9,$11}3、增加一个用户kali日志:Jul:12:15localhostuseradd[]:newgroup:name=kali,GID=Jul:12:15localhostuseradd[]:newuser:name=kali,UID=,GID=,home=/home/kali,shell=/bin/bashJul:12:58localhostpasswd:pam_unix(passwd:chauthtok):passwordchangedforkali#grepuseradd/var/log/secure4、删除用户kali日志:Jul:14:17localhostuserdel[]:deleteuserkaliJul:14:17localhostuserdel[]:removedgroupkaliownedbykaliJul:14:17localhostuserdel[]:removedshadowgroupkaliownedbykali#grepuserdel/var/log/secure5、su切换用户:Jul:38:13localhostsu:pam_unix(su-l:session):sessionopenedforusergoodbyroot(uid=0)sudo授权执行:sudo-lJul:43:09localhostsudo:good:TTY=pts/4;PWD=/home/good;USER=root;COMMAND=/sbin/shutdown-rnow

常用的shell命令

find、grep、egrep、awk、sed

1、grep显示前后几行信息:

标准unix/linux下的grep通过下面參数控制上下文:grep-C5foofile显示file文件里匹配foo字串那行以及上下5行grep-B5foofile显示foo及前5行grep-A5foofile显示foo及后5行查看grep版本号的方法是grep-V

2、grep查找含有某字符串的所有文件

grep-rnhello,world!*:表示当前目录所有文件,也可以是某个文件名-r是递归查找-n是显示行号-R查找所有文件包含子目录-i忽略大小写

3、如何显示一个文件的某几行:

catinput_file

tail-n+

head-n#从第行开始,显示行。即显示~行

命令替换后门

黑客会替换替换top、ps等命令

检测stat命令查看文件状态并且使用md5sum命令查看文件hash并将其与正常文件hash进行比较。如果确定被替换,使用正常文件替代坏文件即可

工具

1.利用自动化检测程序rookithunter进行检测rookithunter可以自动化检查主机上可能存在的rookit木马文件,与被篡改的命令等,找到被篡改的命令后可以选择删除命令,然后重新安装命令。

#centosyuminstall-yrkhunter#ubuntuapt-getinstallrkhunterrkhunter--update#更新rkhunter版本rkhunter--propupd#更新rkhunter的特征数据库#常见命令rkhunter--check--sk#自动检测每个部分中间不需要暂停rkhunter--check#自动检测每个部分,每监测完一个部分中断一次,输入enter之后会继续检测下个部分rkhunter-c--sk--rwo#自动检测并只显示告警信息

webshell查杀

使用Webshell查杀工具Windows下D盾等,Linux下河马等

河马webshell查杀:

1
查看完整版本: linux应急常用命令技巧总结