• 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 -efps -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、低频访问的脚本文件



    收藏来自不同论坛,个人博客,个人笔记等一系列对本人知识面有提升的文章
  • 相关阅读:
    Swift入门篇-Hello World
    Swift入门篇-swift简介
    Minecraft 插件 world edit 的cs 命令
    搭建本地MAVEN NEXUS 服务
    MC java 远程调试 plugin 开发
    企业内部从零开始安装docker hadoop 提纲
    javascript 命令方式 测试例子
    ca des key crt scr
    JSF 抽象和实现例子 (函数和属性)
    form 上传 html 代码
  • 原文地址:https://www.cnblogs.com/sandymandy/p/13213553.html
Copyright © 2020-2023  润新知