安全应急之常见命令篇(Linux&Windows)

1

安全应急

1、应急响应目标

在第一时间采取响应的措施,恢复业务到正常,调查安全事件发生的原因,避免同类事件发生,提供数字证据

2、应急响应范围

邮件钓鱼,黑客入侵,APT攻击,漏洞利用,网络攻击,数据外泄,时间通报,攻击溯源,网络异常,网站被黑,网站挂马,网站暗链,网站篡改

3、应急响应的目的

判断这次应急是否是被成功入侵的安全事件

找到攻击者入口点

提取恶意样本

帮助客服梳理攻击者的攻击路线,提供漏洞修复方案

2

Linux

1、Linux系统基础知识

Etc/sysconfig/network-script/ 网卡配置

目录结构

1/bin 放置系统命令目录,/bin目录可以在维护模式下还可以被操作
2/boot 放置开机使用的文件,包括linux核心文件以及开机选单与开机所需设定文件
3/dev 放置装置与周边设备都是以文件的形态,存在于这个目录当中
4/etc 系统主要的设定文件几乎都放置在这个目录内,列如人员的账户密码文件,各种服务的起始文件等等
5/home 系统预设的使用者家目录(home,directory) 你新增的用户家目录都会规范进来
6/lib和/lib64 系统的函试库非常的多,而.lib或者/lib64放置常用的函数
7/opt 存放第三方软件和位置目录
8/root root用户的家目录
9/sbin linux有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来设置系统,里面包括了开机,修复,还原系统所需要的指令
10/tmp 任何人都可以读写的目录,重新启动目录中存放的文件会被删除

用户组

1所有者,所在组,其它组

文件普通权限

1Rwx r=4 w=2 x=1

文件特殊权限

1SUID:s出现在文件所有者的X权限上
2SGID:s出现在文件所属群组的X权限上
3SBIT:t出现在文件其他用户的x权限上

2、Linux 常用命令

Stat 跟文件

会显示文件UID,文件名,文件属性,文件访问时间,文件内容修改时间,文件元数据变化时间

1Access time 访问时间:文件中的内容最后被访问的最后时间
2Modified time 修改时间:文件内容被修改的最后时间
3Change time变化时间:文件的元数据发生变化,写入文件,更改所有者,权限修改

Ls 命令 列出文件

1-a 显示隐藏文件,-L 详细显示,-R 递归显示

Netstat命令

1-a 显示所有链接中的soket   -n 使用ip,而不是域名显示 -t 显示TCP链接
2-p 显示每个网络链接对应的进程和用户 -l 显示处于监听中的socket
3-e 显示拓展信息,inode等信息
4-u 显示UDP连接

Lsof 命令 列出来当前系统打开文件

1Lsof -c sshd 显示sshd进程现在打开的文件
2Lsof -p pid 显示进程号为pid的进程情况
3Lsof +d /tmp 显示目录下被进程打开的文件
4Lsof +D /tmp 递归显示显示目录下被进程打开的文件
5Lsof -i:80 查看端口为80的tcp或者udp进程

Ps命令 常用进程

1Ps -a 显示当前终端下的进程
2Ps -u 以用户为主的显示方式
3Ps -x 显示所有进程

Grep命令 检索命令

1Grep -I 忽略大小写
2Grep -v 不包含特殊字符

Tcpdump命令 抓流量

1Tcpdump -I eth0 抓取网卡为eth0的流量
2Tcpdump tcp   抓取tcp流量
3Tcpdump port 53 抓取端口为53的流量,源端口或者目的端口
4Tcpdump host 1.1.1.1 抓取和主机1.1.1.1 有关的流量
5Tcpdump -w wireshark。Pcap 流量保存为图形化分享软件可识别的数据包

Find命令 目录文件列出来,也可以查找文件

1Find path -name filename 在path路径下查找文件名为filename的文件
2Find path -perm 777 在path路径下查找文件权限为777的文件
3Find path -perm -700 在path路径下查找文件权限为700以及700以上权限的文件

Md5计算文件Md5

Rz 接收文件

Sz传输文件

Strings 字符串显示文件

Linux常规检查项-关键文件,关键目录等

文件检测-历史命令

Root用户执行过的历史命令

1/root/.bash_history

对应username执行过的历史命令

1/home/{username}/.bash_history

当前用户执行过的历史命令

1History

文件检测-系统关键文件

1/etc/passwd 包含系统用户和用户的主要信息
2/etc/shadow 用于储存系统中用户的密码,又称为影子文件
3/etc/group  记录组ID和组名的对应文件

写到profile里面的命令都是会被调用执行的

1/etc/profile 此文件涉及系统的环境,变量,会从中调用shell变量
2/root/.bash_profile 变量
3/home/{username}/.bash_profile 变量
4/root/.bashrc  此文件为系统的每个用户设置的环境信息,用户第一次登陆时,该文件被执行
5/home/{username}/.bashrc
6/root/.bash_logout  用户退出的时候的操作
7/home/{username}/.bash_logout
8/root/.ssh/authorized_keys  存放ssh公私钥的地方
9/home/{username}/.ssh/authorized_keys

文件检测—系统关键目录

1/root/
2/home/{username}
3/tmp
4/var/tmp
5/dev/shm

命令检测,防止恶意命令替换

1/usr/bin/ps
2/usr/bin/netatat
3/usr/bin/ps
4/usr/sbin/lsof
5/usr/sbin/ss
6/usr/bin/stat

检测系统安装包

列出系统所有按照的rpm包

Rpm -qa

校验系统所有rpm包

Rpm -V -a

校验特定文件或者命令

Rpm -V -f /etc/sysconfig

Which ps 查看ps命令的变量路径

3、Linux应急计划任务

Crontab 计划任务:系统自带的定时执行脚本或者命令的系统服务

Systemctl status crond  查看crond服务状态

Systemctl start crond   启动crond服务

Systemctl stop crond 停止crond服务

Systemctl enable crond    开机启动crond服务

Systemctl disable crond  关闭开机启动crond服务

Crontab

1-l 列出crontab
2-u 指定用户用户
3-e 编辑crontab

从左到右依次为:

[分钟] [小时] [每月的某一天] [每年的某一月] [每周的某一天] [执行的命令]

/etc/cron.deny    /etc/cron.allow

Crontab的限制文件,用户名存在cron.deny,且cron.allow不存在,或者用户名不存在cron.allow的时候,不允许此用户创建crontab

Cron.allow优先级高于cron.deny

系统默认不存在cron.allow

系统默认crontac相关配置文件目录

1/etc/cron.d/
2/etc/cron.hourly/
3/etc/cron.daily/
4/etc/cron.monthly/
5/etc/cron.weekly/
6/etc/crontab
7/var/spool/cron/
8/var/log/cron  crontab日志
9/etc/systemd/system/multi-user.target.wants/crond.service

4、Linux-系统日志

配置文件

1/etc/rsyslog.conf
2/etc/rsyslog.d/*

登陆相关日志

1/var/log/下
2Secure 记录于安全相关的信息
3Lastlog 当前登陆的用户日志
4Wtmp 永久记录每个用户登陆,注销及系统的启动,停机的事件,last命令查看
5Btmp 尝试登陆且失败日志

其他日志

1Messages 各种系统守护进程,用户程序和内核相关信息
2Cron   c rontab日志
3Audit/*   audit日志,监控系统调用
4Boot.log  启动信息相关日志
5Yum.log  通过yum安装rpm相关日志
6Httpd/*   httpd服务访问日志和错误日志
7Firewalld  防火墙相关日志
8Mail      邮件相关日志
9Dmesg    核心启动日志

Windows常见命令

1Regedit 查看策略表
2Msconfig  查看系统配置
3Taskmgr   启动任务管理器
4Eventvwr,msc  打开日志的命令
5Gpedit.msc   打开本地组策略
6Compmgmt.msc  计算机管理
7Lusrmgr.msc   打开用户与组
8Taskschd   打开计划任务
9Net user xxx /add 添加用户
10Net localgroup administrators xxxx /add 把某用户放到管理员组里面
11Net session 查询当前会话
12Net start 查看当前运行的服务
13Net use 查看当前共享连接
14Net share 查看共享映射的盘符,连接状态
15Net share xxx /del 删除共享的链接
16查看隐藏用户可以去,用户管理
17Findstr /s /I “hellow” ** 
18查询包含hellow 的关键字
19Wmic pross
20Attrib 查看文件属性
21Attrid 1.txt
22Attrid -R

系统日志收集工具

1Sglad_ir
2Gather_log

3

windows

系统变量敏感文件路径

1%WINDIR%     C盘 windows
2%WINDIR%\system32\%  c盘windows system32
3%TEMP% 临时目录
4%APPDATA% 软件程序
5%LOCALAPPDATA% 软件程序

Windows 系统日志

1C:\Windows\System32\winevt\Logs\system.evtx

Windows系统安全日志

1C:\Windows\System32\winevt\Logs\ Security.evtx
24624id 是登陆成功的id

Windows 应用程序日志

1C:\Windows\System32\winevt\Logs\ Application.Evtx
2主要关注安全日志,里面记录账户登陆,注销,等等的日志

系统日志中的id

1Id 12 系统启动
26005ID 事件日志服务启动
36004ID 事件日志服务停止
4Id 13 系统关闭

安全日志中的id

14732 添加用户启动安全性的本地组中
24722  启动用户的id
34720  创建用户
44624 登陆成功
54625 失败登陆
64726  删除用户
74634 注销
84776  成功/失败的账户认证
91102 清理日志

安全日志中的 登陆日志类型

12 交互登陆
23 网络登陆(通过net use,访问共享网络)
34 批处理(为批处理程序保留)
45 服务器启动
56 不支持
67 解锁(带密码保护的屏幕保护程序)
78 网络明文,iis服务器登陆验证
810 远程交互(终端服务,远程桌面,远程辅助)
911 缓存域证书登陆

常用的抓包工具

1wireshark
2Tcp.port eq 25
3查询tcp端口为25的
4Ip.addr == 127.0.0.1 包含127.0.0.1的
5Linux 抓包用的比较多
6Tcpdump
7Tcpdump host ip
8抓这个ip
9Tcpdump host ip1 and ip2
10抓
11Tcpdump -I eth0 监听这个网卡
12Tcpdump tcp port 445 and src host ip

源ip 端口为445的

这个windows 用的比较多,比较简单好用,用Micrsosoft Network Monitor

安全分析工具

PChunter

Autoruns

Process explorer

https://www.anquanke.com/post/id/182858

Web日志分析

1Apache
2在httpd.conf里面记录log的访问日志的路径
3/etc/httpd/logs
4Access.log
5Nginx

现在主要的日志格式是NCSA拓展格式

1访问主机(remotehost)
2日期时间(date)
3请求(request)
4请求类型(METHOD)
5请求资源(RESOURCE)
6协议版本号(PROTOCOL)
7状态码(status)
8传输字节数(bytes)
9来源页面(referrer)
10浏览器信息(agent)

作者:Jie

文章来源:https://www.hackjie.com/1402.html

(0)

相关推荐