0x01 linux常见日志文件位置
web日志存在位置
Apache日志
Windows: <Apache安装目录>/logs/access.log
Linux: /usr/local/apache/logs/access_log
若默认位置不存在,可通过/etc/httpd/conf/httpd.conf配置来判断。
Tomcat日志
Tomcat默认不开启日志,可通过<tomcat安装目录>/conf/server.xml配置来判断Tomcat日志位置,一般情况下tomcat日志位于安装目录下的logs文件夹。
IIS日志
IIS日志默认存储于 %systemroot%system32LogFilesW3SVC目录中
通过WEB站点配置可确认其位置:WEB站点 — 属性 — 网站 — W3C扩展日志文件格式 — 属性 — 日志文件目录
Nginx日志
Linux: /usr/local/nginx/log/access.log
若默认位置不存在,可通过/usr/local/nginx/conf/nginx.conf配置来判断。
- /var/log/boot.log(自检过程)
- /var/log/cron (crontab守护进程crond所派生的子进程的动作)
- /var/log/maillog (发送到系统或从系统发出的电子邮件的活动)
- /var/log/syslog (它只记录警告信息,常常是系统出问题的信息,所以更应该关注该文件)
- 要让系统生成syslog日志文件,
- 在/etc/syslog.conf文件中加上:*.warning /var/log/syslog
该日志文件能记录当用户登录时login记录下的错误口令、Sendmail的问题、su命令执行失败等信息 - /var/run/utmp 该日志文件需要使用lastlog命令查看
- /var/log/wtmp (该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件) last命令就通过访问这个文件获得这些信息
- /var/run/utmp (该日志文件记录有关当前登录的每个用户的信息)
- /var/log/xferlog (该日志文件记录FTP会话,可以显示出用户向FTP服务器或从服务器拷贝了什么文件)
0x02 webshell应急响应处理
webshell手工确认(Linux):
- 常用命令:查找最容易写入webshell的目录
find /var/www/ -perm -010 -type d -user www-data
具有写入权限的目录
-perm<权限数值>:查找符合指定的权限数值的文件或目录;
-typ<文件类型>:只寻找符合指定的文件类型的文件;f 普通文件 d目录
-
linux中文件权限位概念:
rwx,代表的含义分别是读、写、可执行,而一个文件或目录的属性中又包括所属用户u、所属组g、其他用户o三个部分的属性,-
所属用户 所属组 其他用户
rwx rwx rwx -
ps:菜刀的属性含义
将rwx换算成数字,规则 r=4, w=2, x=1,rwx=4+2+1=7; r-x=4+1=5;r-w=4+2=6 -
用户在其拥有权限的位上设置1,没有权限的位设置0。如果将每个部分的这些权限位看成二进制数,每个部分可以用3位二进制数表示,最大值为7(2^3-1),表示可读、可写、可执行等权限。
-
-
最近30天内被访问过的脚本文件
find /var/www/jcsweb/*.php -type f -atime -30
常用命令:(查找指定修改时间的脚本文件) Linux文件系统每个文件都有三种时间戳:
访问时间(-atime/天,-amin/分钟):用户最近一次访问时间。
修改时间(-mtime/天,-mmin/分钟):文件最后一次修改时间。
变化时间(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间。stat /var/www/jcsweb
查看文件或目录的时间戳
敏感文件收集
Windows
C:oot.ini //查看系统版本
C:WindowsSystem32inetsrvMetaBase.xml //IIS配置文件
C:Windows
epairsam //存储系统初次安装的密码
C:Program Filesmysqlmy.ini //Mysql配置
C:Program Filesmysqldatamysqluser.MYD //Mysql root
C:Windowsphp.ini //php配置信息
C:Windowsmy.ini //Mysql配置信息
C:Windowswin.ini //Windows系统的一个基本系统配置文件
Linux
/root/.ssh/authorized_keys
/root/.ssh/id_rsa
/root/.ssh/id_ras.keystore
/root/.ssh/known_hosts //记录每个访问计算机用户的公钥
/etc/passwd
/etc/shadow
/etc/my.cnf //mysql配置文件
/etc/httpd/conf/httpd.conf //apache配置文件
/root/.bash_history //用户历史命令记录文件
/root/.mysql_history //mysql历史命令记录文件
/proc/mounts //记录系统挂载设备
/porc/config.gz //内核配置文件
/var/lib/mlocate/mlocate.db //全文件路径
/porc/self/cmdline //当前进程的cmdline参数