专栏首页Timeline SecHW防守 | Linux应急响应基础

HW防守 | Linux应急响应基础

0x00

引言

简单说一下,我们为什么会推出关于HW防守的文章,目前关于该行动,会发现越来越多的厂商需求该行动的人员具备分析溯源的能力了。

其中原因一是由于该行动规则的需求,溯源能力可以很好的进行攻击队画像描述,追踪到更多的信息线索,从而给防守方增加更多的该行动的分数。

二是任何产品目前都是需要人来驱动的,都有其局限性,比如日志采集的灵活度及完整性等,我们主观的收集一些信息,可以更好的辅助产品,也可以兼顾不同种类安全产品的一些边界问题。

目前已经推出windows基础篇及此篇linux基础篇试试水,方便大家进行该行动的时候查阅知识点进行基础溯源,同时也欢迎大家反馈想法与意见,如果后续效果可以的话,我们会推出一些真实脱敏的溯源加分案例进行交流。

0x01

技能树

  • Linux常用命令
  • 常见日志的位置以及分析方法
  • 熟悉常规黑客的攻击手法
  • 常规安全事件的处置思路

0x02

linux 常用命令

查找与文本操作

1、find

根目录下所有.jsp后缀文件

find / -name *.jsp

最近3天修改过的文件

find -type f -mtime -3

最近3天创建的文件

find -type f -ctime -3

2、grep、strings、more、head、tail

过滤出不带有某个关键词的行并输出行号

grep -nv 'root' /etc/passwd

查看根目录下 含有root信息的文件,并标注行号

grep -nr root /

查看根目录下后缀为.jsp .jspx文件,并从大到小排列

grep -nr -v "404" ./ | grep -E "\.jsp | \.jspx" | more

显示文件前十行

head /etc/passwd

实时展示文件内容

tail -f 文件名

3、awk、sort、uniq

awk的F参数是指定分隔符,print $1意思是打印第一列,sort命令是用来排序的,uniq命令是用来把相邻的重复数据聚合到一起,加个c参数意思就是把重复次数统计出来,为什么先要用sort聚合一次呢,就是因为uniq命令只会聚合相邻的重复数据,最后那个sort命令刚才说了是用于排序的,他的n参数是以数字排序,r参数是倒叙排序

awk -F " " '{print $1}' access.log| sort|uniq -c|sort -nr

案例:

我们以空格为分界线 ($1为第一行)对access.log日志进行分析,筛查提取访问IP 从大到小排序,并提示访问次数。

系统状态命令

1、lsof

查看某个用户启动了什么进程

lsof -u root

某个端口是哪个进程打开的

lsof -i:8080

2、last、lastb、lastlog

登录失败记录:/var/log/btmp

lastb

最后一次登录:/var/log/lastlog

lastlog

登录成功记录: /var/log/wtmp

last

3、crontab

查看计划任务是否有恶意脚本或者恶意命令

crontab -l

4、netstat

a参数是列出所有连接,n是不要解析机器名,p列出进程名

netstat -anp

5、ps

查看进程信息

ps -ef
ps -aux

6、top

查看进程cpu占比(动态任务,可实时查看最高cpu占有率)

top

7、stat

查看某个文件是否被修改过

stat

8、last和lastb(对应日志wtmp/btmp)

last查看成功登陆的IP(用于查看登陆成功信息)

登陆用户---连接方式---时间

lastb查看连接失败的IP(可用于查看爆破信息)

登陆用户---登陆方式---登陆IP---时间

0x03

日志分析

1、安全日志 /var/log/secure

作用:安全日志secure包含验证和授权方面信息

分析:是否有IP爆破成功

2、用户信息 /etc/passwd

内容含义:注册名、口令、用户标识号、组标识号、用户名、用户主目录、命令解释程序

分析:是否存在攻击者创建的恶意用户

3、命令执行记录 ~/.bash_history

作用:命令执行记录 ~/.bash_history

分析:是否有账户执行过恶意操作系统命令

4、root邮箱 /var/spool/mail/root

作用:root邮箱 /var/spool/mail/root

分析:root邮箱的一个文件,在该文件中包含大量信息,当日志被删除可查询本文件

5、中间件日志(Web日志access_log)

nginx、apache、tomcat、jboss、weblogic、websphere

作用:记录访问信息

分析:请求次数过大,访问敏感路径的IP

位置:/var/log下 access.log文件(apache默认位置)

位置:/var/log/nginx下 access名称日志(nginx日志位置)

位置:tomcat、weblogic等日志均存放在安装路径下logs文件下

访问日志结构:访问IP---时间---请求方式---请求路径---请求协议----请求状态---字节数

6.登陆日志(可直接使用命令调取该信息,对应命令last/lastb)

位置:/var/log/wtmp #成功连接的IP信息

位置:/var/log/btmp #连接失败的IP信息

7.cron(定制任务日志)日志

位置:/var/log/cron

作用:查看历史计划任务(对该文件进行分析调取恶意病毒执行的计划任务,获取准确时间)

8、history日志

位置:~/.bash_history

作用:操作命令记录,可筛查攻击者执行命令信息

9、其他日志

redis、sql server、mysql、oracle等

作用:记录访问信息

分析:敏感操作

web日志分析思路:

寻找Webshell的方法:

1、文件内容中的恶意函数

PHP:eval(、system(、assert( JSP:getRunTime(、 FileOutputStream( ASP:eval(、execute(、 ExecuteGlobal(

2、Web日志中的webshell特征

Darkblade:goaction=login JspSpy:o=login PhpSpy:action=phpinfo Regeorg:cmd=connect Other:cmd=

3、贴合Web业务中的url来分析Web日志

4、每天新增的动态脚本文件

5、低频访问的脚本文件

本篇完

本文分享自微信公众号 - Timeline Sec(TimelineSec),作者:璠淳

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-06-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • HackerOne | 头像上传imagetragick命令执行

    alyssa_herrera在sofurry.com头像上传处存在imagetragick命令执行,能够发现一个配置文件包含数据库凭证、其他密钥,影响网站。

    PaperPen
  • HW防守|溯源反制攻击方的服务器

    之前答应说分享一篇真实案例,来兑现一下承诺,分享一个攻击队不注意细节被反制并溯源加分的故事。

    PaperPen
  • 从两道靶场题中学习低权限如何反弹shell

    可以看出其他用户是没有高权限的,写入执行权限都没有,就不能在当前目录下写马;经尝试,bash反弹shell未能成功。

    PaperPen
  • 英美研究人员使用机器学习技术成功预测地震

    英国剑桥大学发布一项研究显示,机器学习技术在实验室模拟状态下能成功预测地震,未来或许能更高效预测这类灾害的发生。来自英国和美国的一组研究人员使用机器学习技术成功...

    人工智能快报
  • 运维中的日志切割操作梳理(Logrotate/python/shell脚本实现)

    对于Linux系统安全来说,日志文件是极其重要的工具。不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗...

    洗尽了浮华
  • Oracle数据库重做日志及归档日志的工作原理说明

    Oracle数据库重做日志及归档日志的工作原理: lgwr进程将redo log buffer中的重做数据写入到redo log中,此时的redo log分组,...

    洗尽了浮华
  • 如何在Ubuntu上找到Redis日志

    日志对于Redis安装的故障排除至关重要。你可能会问自己“我的Redis在哪里登录?” 或者“Redis在Ubuntu 14.04上存储日志文件的位置是什么?”

    编程男孩
  • 归一化与标准化详解

    归一化(Normalization) 1.把数据变为(0,1)之间的小数。主要是为了方便数据处理,因为将数据映射到0~1范围之内,可以使处理过程更加便捷、快速。...

    学到老
  • 归一化与标准化详解

    归一化(Normalization) 1.把数据变为(0,1)之间的小数。主要是为了方便数据处理,因为将数据映射到0~1范围之内,可以使处理过程更加便捷、快速。...

    学到老
  • Redis 安装配置

    Redis 是一个key-value存储系统。和Memcached类似,但是解决了断电后数据完全丢失的情况,而且她支持更多无化的value类型,除了和strin...

    阳光岛主

扫码关注云+社区

领取腾讯云代金券