护网面经总结(三)
61、目的ip=114.114.114.114 端口是53 需要封禁吗?
IP是114.114.114.114是代表中国DNS公共服务器。
DNS服务默认端口:53.
若无明确威胁:无需封禁,避免影响正常业务。
若存在攻击行为:
临时封禁并记录:
iptables -A INPUT -s 114.114.114.114 -p udp --dport 53 -j DROP
。进一步分析攻击源头(如是否为 IP 伪造)。
若为合规需求:
封禁外部 DNS 并强制内网使用指定服务器,同时提供备用方案(如企业级 DNS 服务)。
62、群里面遇到exe可执行程序怎么处理?
不清楚exe的作用,不要直接运行该程序,在隔离环境中或沙箱中测试该exe程序是否为恶意程序,再进行运行。
杀毒软件扫描:下载后立即用安装的杀毒软件(如Windows Defender、火绒等)扫描文件。若软件提示威胁,立即删除。
在线多引擎扫描:通过VirusTotal或微步云沙箱上传文件,利用多款引擎检测恶意代码。
检查文件属性:
数字签名:右键文件 > 属性 > 数字签名,查看签名是否有效且来自可信公司(需注意伪造签名的情况)。
文件大小与名称:异常小的文件(如几KB的“安装程序”)或乱码名称(如
update_#x3f1.exe
)可能为恶意软件。安全环境测试(如需进一步分析)
虚拟机(VM):在VMware或VirtualBox中运行,隔离主机系统。确保虚拟机无重要数据且快照已备份。
沙盒工具:使用Sandboxie、Windows Sandbox(Win10+)等沙盒环境运行,限制程序对真实系统的访问。
行为监控工具:搭配Process Monitor、Wireshark等工具,观察文件是否尝试修改系统文件、连接可疑IP。
63、 遇到远控木马告警怎么处理
根据告警的IOC信息查询该威胁情报信息,根据情报提供的相关信息进行行为匹配。
根据情报提供的信息通过天眼进行日志检索,
1、不断的解析该域名down.luckyboy.cn
2、内网主机请求该域名上的au3.exe文件,命中情报信息。
64、CS了解过吗?
它是一款以 Metasploit 为基础的 GUI 的框 架式渗透工具,集成了端口转发、服务扫描、自动化溢出、多模式端口监听、Winexe 木马生成、Win dll 木马生成、Java 木马生成、office宏病毒生成、木马捆绑等;钓鱼攻击包括:站点 克隆、目标信息获取、Java执行、浏览器自动攻击等。
CS流量特征:
1,基础特征:心跳包
2,请求特征:下发的指令,url路径,老版本固定的ua头
3,源码特征:checksum8 (92L 93L)
如果进行二开魔改后的cs,可提取样本
MSF流量特征:
1,端口号:msf默认使用4444端口作为反向连接端口
2,数据内容:msf数据包通常包含特定字符串:("meterpreter"、"revshell"等)
65、wireshark 过滤条件
显示过滤:
操作符:
逻辑操作符:
过滤器举例
按协议过滤
tcp # 显示所有 TCP 流量
udp # 显示所有 UDP 流量
http # 显示 HTTP 流量
dns # 显示 DNS 查询
icmp # 显示 ICMP 包(如 ping)按 IP 地址过滤
ip.src == 192.168.1.100 # 源 IP
ip.dst == 8.8.8.8 # 目标 IP
ip.addr == 10.0.0.1 # 源或目标 IP按端口过滤
tcp.port == 80 # 源或目标端口为 80
tcp.srcport == 8080 # 源端口为 8080
udp.dstport == 53 # 目标端口为 53(DNS)
HTTP 过滤
http.request.method == "GET" # 所有 GET 请求
http.response.code == 404 # 404 响应
http.host contains "google" # 域名包含 "google"高级过滤
tcp.flags.syn == 1 # 显示 TCP SYN 包
frame.len > 1000 # 数据包长度大于 1000 字节
tcp.analysis.retransmission # 显示重传的 TCP 包
ssl.handshake.type == 1 # TLS Client Hello逻辑运算符
and(&&)、or(||)、not(!)
# 示例:
(ip.src == 192.168.1.100 && tcp.port == 443) || dns过滤器BPF语法:
捕获特定主机的流量
host 192.168.1.100
捕获特定端口的流量
port 80 # HTTP
port 443 # HTTPS
port 53 # DNS捕获网络段流量
net 192.168.1.0/24
排除特定流量
not port 22 # 排除 SSH
组合条件
tcp port 80 and host 192.168.1.100
66、shiro反序列化漏洞
漏洞原理
触发点:Shiro的
rememberMe
功能用于用户身份持久化,其Cookie值通过AES加密后传输。漏洞根源:
Shiro ≤1.2.4版本使用硬编码的默认AES密钥(
kPH+bIxk5D2deZiIxcaaaA==
)。攻击者若获取密钥,可构造恶意序列化对象,加密后植入Cookie,触发服务端反序列化漏洞。
利用链:依赖Java反序列化Gadget链(如Commons Beanutils/Collections),执行任意命令。
shiro的key爆破成功有什么特征 响应包中不会出现rememberme=deleteme
如何判断shiro a. 登录界面的“记住我”“记住密码”等 b. 请求包Cookie中存在rememberMe字段 c. 登录失败返回rememberMe=deleteMe字段
shiro550与shiro721的区别,利用方式以及原理 a. 区别:550可直接跑默认key,shiro721默认key跑不了,需要一个登录成功的cookie b. 原理:Cookie中这个rememberMe字段,它是先对相关信息序列化,通过AES加密,再base64编码,然后传入服务器,到服务器那里base64解码,AES解密,然后反序列化 AES这个Key曾经是固定的一个默认key,我们轻而易举能够构造恶意代码传入服务器,对于更改过的key可以进行爆破爆出来,还是可以打这个反序列化 c. 利用:使用ysoserial,通过检测出来的CC链子监听一个JRMP端口,我们向服务器传入的payload就是指向这个端口,然后一旦Cookie发送到服务器,服务器连接到我们的JRMP服务器,ysoserial自动通过CC链子把弹shell的命令打过去getshell
利用过程:
1、检索RememberMe Cookie的值
2、Base64解码
3、AES解密(加密密钥硬编码)
4、进行反序列化操作(未过滤处理)
5、攻击者可以使用Shiro的默认密钥构造恶意序列化对象进行编码来伪造用户的Cookie,服务端反序列化时触发漏洞,从而执行命令
shiro漏洞原理:
Apache Shiro框架提供了记住我的功能(RememberMe),用户登录成功后会生成经过加密并编码的cookie。cookie的key为RememberMe,cookie的值是经过相关信息进行序列化,然后使用AES加密(对称),最后再使用Base64编码处理。服务端在接收cookie时:检索RememberMe Cookie的值 Base 64解码 AES解密(加密密钥硬编码) 进行反序列化操作(未过滤处理) 攻击者可以使用Shiro的默认密钥构造恶意序列化对象进行编码来伪造用户的Cookie,服务端反序列化时触发漏洞,从而执行命令。
shiro550与shiro721的区别:
1、这两个漏洞主要区别在于Shiro550使用已知密钥碰撞,只要有足够密钥库(条件较低),不需要Remember Cookie
2、Shiro721的ase加密的key基本猜不到,系统随机生成,可使用登录后rememberMe去爆破正确的key值,即利用有效的RememberMe Cookie作为Padding Oracle Attack的前缀,然后精心构造 RememberMe Cookie 值来实现反序列化漏洞攻击,难度高
流量特征:
rememberme字段长度异常
请求包Cookie的rememberMe中会存在AES+base64加密的一串java反序列化代码。
返回包中存在base64加密数据,该数据可作为攻击成功的判定条件。
67、勒索病毒传播的方法有哪些
钓鱼邮件、软件漏洞、恶意网站、网络共享与文件传输、社交媒体与及时通讯工具、软件供应链、移动设备、供应链攻击(通过感染合法软件更新或供应商系统进行传播)、远程桌面协议(RDP)攻击(暴力破解RDP登录凭证,直接入侵系统)
68、log4j漏洞
原理:在Log4j2中提供了Lookups机制,Lookups提供了一种在Log4j配置文件任意位置添加值的方法;而Lookups机制中,存在JNDI,在Log4j日志输出时,未对字符合法性进行严格的限制,造成JNDI协议加载的远程恶意脚本被执行,从而造成RCE。
响版本 Apache Log4j 2.0-alpha1 到 2.14.1(包括这些版本) Apache Log4j 1.2.19 到 1.2.20(包括这些版本) lookups的主要功能就是提供另外一种方式以添加某些特殊的值到日志中,以最大化松散耦合地提供可配置属性供使用者以约定的格式进行调用。(lookups是实现StrLookup接口的特定类型的插件)lookups给开发者提供了更加方便的后端开发过程中的调试效率
lookups可以通过 {$xx} 的方式来执行一些命令和操作,log4j支持在日志中使用该表达式执行命令。
log4j流量特征:
原理:该漏洞主要是由于日志在打印时当遇到
${
后,以:号作为分割,将表达式内容分割成两部分,前面一部分prefix,后面部分作为key,然后通过prefix去找对应的lookup,通过对应的lookup实例调用lookup方法,最后将key作为参数带入执行,引发远程代码执行。漏洞特征:${jndi: rmi69、Log4j2反序列化原理
log4j2是一个底层日志组件,它的lookup接口会造成通过JNDI引用命名服务,log4j2记录日志的时候,碰到${xxx}这样的文字没有一比一地记录下来,而是去解析了,那么就可以通过jndi接口引用到dns/rmi/ldap协议接口,dns协议不用多说,dnslog可以解析请求,rmi和ldap呢,攻击者可以自启一个服务器,通过${}传入精心构造的payload让目标服务器去请求攻击者构造的ldap服务器,以及攻击者自定义的内容,攻击者的服务器就会自动生成恶意的java类,然后通过HTTP端口下发给目标服务器。目标服务器收到之后就直接把它加载到内存中执行,实现RCE。
70、wireshark抓到数据包之后你怎么去分析
一级:
打开数据包后,查看
Statistics > Capture File Properties
确认基础信息(如接口、过滤器)然后根据协议对数据进行分析统计,使用Statistics > Protocol Hierarchy
快速发现异常协议占比(如大量ARP可能预示扫描/欺骗)。接下来,过滤关键流量
基础过滤:
ip.src==192.168.1.1
、tcp.port==80
、http
、dns
。高级过滤:
重传包:
tcp.analysis.retransmission
异常状态码:
http.response.code >= 400
可疑域名:
dns.qry.name contains "malicious"
二级:
网络层问题定位
连通性问题:
检查ICMP不可达报文(
icmp.type==3
)。分析TTL异常(
ip.ttl < 64
可能为远距离路由问题)。ARP欺骗:
过滤
arp.duplicate-address-detected
或同一IP多MAC地址。三级:
会话追踪与会话重组
右键数据包 >
Follow > TCP/UDP Stream
还原完整会话内容(如HTTP文件传输)。使用
tshark -r file.pcap -qz follow,tcp,raw,N
命令行提取二进制流。时间序列分析
Statistics > IO Graphs
生成流量趋势图,识别突发流量(如DDoS)。设置高级Y轴参数(
AVG(tcp.window_size)
分析拥塞变化)。解密加密流量
配置TLS密钥:
Edit > Preferences > Protocols > TLS
导入RSA密钥。解密后可直接分析HTTP/2、QUIC等加密协议
四级:安全事件排查
扫描与探测
检测SYN扫描:
tcp.flags.syn==1 and tcp.flags.ack==0
且多目标端口。ICMP扫描:
icmp.type==8
(Echo请求)高频出现。恶意载荷检测
搜索特征字符串:
frame contains "powershell -enc"
。提取恶意文件:
File > Export Objects > SMB
或HTTP文件导出。横向渗透行为
SMB/NTLM认证分析:过滤
smb2.cmd == 1
(Session Setup请求)。检测Pass-the-Hash:观察NTLMv1哈希传递特征。
五级:自动化辅助工具
内置工具
Tools > Firewall ACL Rules
生成防火墙规则。
Edit > Find Packet
支持正则表达式搜索(如信用卡号模式)。外部扩展
使用
tshark
命令行批量处理:tshark -r input.pcap -Y "http.request" -T fields -e http.host > hosts.txt
结合NetworkMiner提取元数据(如邮件、证书)。
71、常见数据库端口号:
关系型数据库
MySQL 端口:3306 常用于Web应用,需防范公网暴露导致的暴力破解。
PostgreSQL 端口:5432 支持复杂查询,企业环境中可能使用非默认端口。
Oracle Database 端口:1521(服务端口)、5500(管理界面) 企业级数据库,端口常与实例名绑定。
Microsoft SQL Server 端口:1433(TCP)、1434(UDP服务发现) Windows环境常用,需警惕勒索软件攻击。
NoSQL 数据库
MongoDB 端口:27017 文档型数据库,早期版本默认无认证,易泄露数据。
Redis 端口:6379 内存数据库,未设密码时可能被恶意利用。
Cassandra 端口:9042(查询接口)、7000(集群通信) 分布式设计,适用于高可用场景。
Elasticsearch 端口:9200(API)、9300(节点通信) 搜索分析引擎,曾多次因默认无认证导致数据泄露。
缓存与内存数据库
Memcached 端口:11211 内存缓存系统,需防范DRDoS放大攻击。
Amazon RDS 端口:依赖底层数据库(如MySQL:3306) 托管服务,需配置安全组限制访问。
其他数据库
SQLite 端口:无 本地文件型数据库,无需网络通信。
InfluxDB 端口:8086 时序数据库,常用于监控场景。
Neo4j 端口:7474(HTTP)、7687(Bolt协议) 图数据库,需配置访问权限。
72、wireshark怎么过滤端口,过滤响应体?
显示过滤器:
tcp.port == 8080
tcp.srcport == 8080
tcp.dstport == 8080
捕获过滤器:
port 80 # HTTP port 443 # HTTPS port 53 # DNS
一、过滤端口
1. 基础端口过滤语法
通用格式:
tcp.port == 80 # 过滤 TCP 80 端口(包括源和目的端口)
udp.port == 53 # 过滤 UDP 53 端口(如DNS)精准过滤源/目的端口:
tcp.srcport == 3306 # 过滤源端口为 3306 的 TCP 流量(如 MySQL 客户端请求)
tcp.dstport == 443 # 过滤目的端口为 443 的 HTTPS 流量2. 多端口组合过滤
tcp.port in {80, 443} # 过滤 HTTP/HTTPS 流量
(tcp.srcport == 5432) || (udp.port == 1434) # 过滤 PostgreSQL 或 SQL Server 服务发现3. 结合协议增强过滤
tcp.dstport == 80 and http # 过滤 HTTP 请求(精准到协议)
tcp.port == 6379 and redis # 过滤 Redis 流量(需 Wireshark 解析 Redis 协议)
二、过滤响应体(以 HTTP 为例)
1. 过滤 HTTP 响应状态码
http.response.code == 200 # 过滤成功响应
http.response.code >= 400 # 过滤错误响应(如 404/500)2. 过滤响应头内容
http.content_type contains "json" # 过滤 JSON 响应
http.server contains "nginx" # 过滤 Nginx 服务器的响应3. 深度过滤响应体内容
明文响应体过滤(适用于未加密的 HTTP):
http.file_data contains "password" # 响应体中包含 "password" 关键字
http.file_data matches "\\berror\\b" # 用正则匹配完整单词 "error"二进制或加密流量: 若为 HTTPS 需先解密流量,再使用
http.file_data
过滤。
三、其他协议响应体过滤
1. DNS 响应过滤
dns.flags.response == 1 # 过滤所有 DNS 响应
dns.resp.name contains "google.com" # 过滤包含特定域名的 DNS 响应2. MySQL 响应过滤
tcp.dstport == 3306 and mysql.response # 过滤 MySQL 服务端返回的响应包
mysql contains "ERROR" # 过滤包含错误信息的响应3. Redis 响应过滤
tcp.port == 6379 and redis.value matches ".*(auth|password).*" # 过滤含敏感操作的响应
四、高级技巧
1. 快速定位响应包
右键请求包 > Follow > HTTP Stream:直接查看完整请求响应对话。
tcp.stream eq <序号>
:过滤指定 TCP 会话的所有包。2. 大数据量优化
http.content_length > 1024 # 过滤大文件响应(如文件下载)
3. 响应内容导出
导出文件:
File > Export Objects > HTTP
,直接提取响应中的文件(如图片、文档)。导出文本:选中包 > 右键 > Copy > Bytes > Printable Text Only。
五、常见问题
为什么过滤不到内容?
确认数据包已完整捕获(检查是否被分段传输)。
加密流量(如 HTTPS)需先配置解密密钥。
性能卡顿如何处理?
优先用
tcp.port == 80
缩小范围,再用http
二次过滤。避免在实时捕获时使用
contains
操作大文本。
六、实战场景示例
场景 1:调试 API 接口
tcp.port == 443 and http.response.code == 500 # 抓取 HTTPS 的 500 错误
http.file_data contains "NullPointerException" # 定位 Java 异常堆栈场景 2:分析数据库注入攻击
tcp.dstport == 3306 and mysql.query matches ".*SELECT.*FROM.*users.*" # 监控敏感 SQL 查询
73、天眼探针有什么功能?
流量采集:探针会采集DNS、FTP、HTTP、SSL、SMB等协议的流量数据、-
流量还原:探针对采集到的流量进行还原,确保数据的完整性和真实性。
加密传输:还原后的流量日志会加密传输给天眼分析平台,确保数据的安全性。
联动分析平台:探针与天眼分析平台联动,将流量日志、告警日志等数据提交给分析平台进行存储和分析
技术特点和应用场景
天眼探针采用多种技术手段,如基于双向会话分析的web入侵检测、基于沙箱的webshell上传检测和基于规则的网络入侵检测等,能够准确检测和告警新型网络攻击和内部违规行为。此外,探针还支持威胁情报检测和机器自学习的入侵检测,提供准确的入侵告警信息,并支持终端EDR联动、防火墙NDR联动与自动化编排处置,帮助安全运营人员快速研判和处置告警事件
74、天眼能否检索网络日志
天眼系统可以检索网络日志。
天眼系统基于网络流量和终端EDR日志,运用威胁情报、规则引擎、文件虚拟执行、机器学习等技术,能够精准发现网络中的高级网络攻击和新型网络攻击的入侵行为。天眼通过本地大数据平台对流量日志和终端日志进行存储和查询,结合威胁情报和攻击链分析对事件进行研判和回溯。
75、如果目的端口为:x.x.x.x,操作系统win7或者win8,检索语句要怎么写?
明确字段与逻辑关系
目的端口:通常对应字段如
dst_port
、destination.port
。操作系统:可能存储在
os.name
、os.version
或os.platform
等字段中,需根据实际日志结构调整。逻辑组合:使用布尔查询(AND 逻辑)关联端口与操作系统条件。
dport ==x.x.x.x && os.version == windows7 | windows8
76、怎么写模糊查询告警类型为“写入文件”的检索语句?
SQL:
-- 模糊匹配包含"写入文件"的告警类型
SELECT * FROM alerts
WHERE alert_type LIKE '%写入文件%';
-- 使用正则表达式(部分数据库支持)
SELECT * FROM alerts
WHERE alert_type REGEXP '写入文件';如果需要更灵活的模式匹配(如日志分析工具),可以结合正则表达式:
.*写入文件.*
77、如果出现两条相同的告警,是由什么原因造成的?
1. 设备故障:安全设备本身可能存在故障,导致重复发送相同的告警信息。这种情况下,需要对设备进行详细的检查和维修。
2. 误报或配置错误:设备的配置参数或逻辑设置可能存在错误,导致设备错误地重复发送告警。此外,如果设备的告警阈值设置不当,也可能引发误报和重复告警。
3. 网络或通信问题:网络延迟、通信故障或信号干扰等问题,可能导致告警信息在传输过程中被重复接收或处理,从而产生两条相同的告警。
4. 人为因素:在某些情况下,操作员可能由于操作失误或误判而重复触发告警,或者由于系统更新、维护等操作导致告警被重复记录。
78、如果流量层出现sql注入告警,你会怎么处理?
查看告警的真实性,分析流量内容查看是什么类型的SQL注入,然后根据漏洞类型作出相应的防御操作,先阻断对应的攻击(安装WAF,封IP、终止会话等),进行溯源,然后修复漏洞。
79、如果出现蠕虫病毒告警,你会如何处理?
立即断开网络连接:蠕虫病毒具有极强的传播能力,断开网络连接可以有效防止病毒进一步扩散,减少潜在的损失12。
运行杀毒软件进行全面扫描和清除:使用专业的杀毒软件对受感染的设备进行全盘扫描,确保彻底清除蠕虫病毒。同时,确保杀毒软件的病毒库是最新的,以便有效识别和清除最新的蠕虫病毒2。
备份重要数据:在清除病毒之前,务必备份所有重要数据,以防在杀毒过程中数据丢失。可以使用外部硬盘或其他存储设备进行备份2。
更新系统和安全软件:确保操作系统的所有补丁都已安装,同时将安全软件更新到最新版本,以防止蠕虫病毒利用系统漏洞进行攻击23。
审查网络设置和权限:检查网络设置,确保没有开放不必要的端口和服务。同时,审查应用程序的权限设置,避免授权过多权限给不信任的应用程序
80、天眼上发现告警,你怎么分析这些告警?
确认告警来源:
告警类型:明确是网络攻击、系统故障还是其他安全事件。
告警级别:根据严重性(如高、中、低)确定处理的优先级。
收集相关数据:
日志信息:查看系统、网络设备、安全设备的日志,获取更多上下文。
流量数据:分析网络流量,识别异常模式。
系统状态:检查受影响系统的运行状态和配置。
初步分析:
时间线:确定告警发生的时间,关联其他事件。
受影响范围:评估受影响的系统、网络或用户。
攻击特征:识别攻击类型、使用的工具或技术。
深入调查:
取证分析:对受影响系统进行取证,查找入侵痕迹。
恶意代码分析:如有恶意软件,分析其行为。
漏洞评估:检查系统是否存在已知漏洞。
验证与确认:
误报排查:确认告警是否误报。
攻击验证:通过模拟或测试验证攻击是否成功。
制定应对措施:
短期措施:隔离受影响系统、阻断攻击流量等。
长期措施:修补漏洞、更新安全策略、加强监控。
天眼——流量传感器、分析平台、文件沙箱
常见协议字段+搜索语法
ⅰ. 布尔运算符AND OR NOT 通配符? *,匹配特殊符号的时候前面加/ 范围查询:TO
ⅱ. 检索日志:在分析平台有日志检索
ⅲ. 协议字段:attack_sip攻击ip、alarm_sip受害者ip、attack_type攻击类型、is_web_attack(标记告警是否为web告警,0否1是)、hazard_level威胁级别
ⅳ. 网络协议字段sip、dip、sport、dport(五元组:源目ip、源/目端口、协议)
ⅴ. TCP&UDP协议字段proto(协议)、uplink_length、downlink_length(上下行字节
数)、src_mac、dst_mac(源目mac)、up_payload、down_payload(下下行100字节)
ⅵ. HTTP协议,就是直接过滤请求方式就ok 还有method、uri、host、cookie、agent、referer、xff、data(POST的数据) 状态码也可搜索 重要的有xff:找真实ip,referer:溯源辅助,判断告警触发方式
ⅶ. DNS协议:dns_type(dns访问类型,0请求1响应)、host、addr(A记录)、mx、cname
ⅷ. SSL协议:版本号version、session_id(会话id)、server_name(服务器名字)、notafter(证书有效期)、public_key(证书公钥)
ⅸ. 文件传输协议:proto、uri(传输的资源及路径)、host、status、method、file_name、file_md5、mime_type、referer
X. 登录协议:proto、passwd、info(登录结果--成功就有问题)、user、db_type、normal_ret(登录或数据库操作结果,success就是有问题咯)
Xⅰ. 邮件协议:proto、time、from、to、cc(邮件抄送人)、subject(主题)、attach_name(附件名称)、attach_md5(附件md5)、plain(邮件正文)
X ⅱ. 数据库:user、db_name、db_type、ret_code(数据库操作返回的状态码)、sql_info(操作信息)
使用天眼如何查看日志 登录后有日志查看功能,选择日志源,还可以过滤日志数据,日志详情里包括时间戳、日志级别、来源IP、事件类型、详细描述等信息。
81、php命令执行函数:
eval()、system()、exec()、shell_exec()
82、怎么判断目标操作系统是什么
天眼安全设备(通常指网络流量监控或入侵检测系统)判断目标操作系统的类型,主要依赖网络协议栈指纹识别技术。不同操作系统的网络协议实现存在细微差异,这些差异会形成独特的“指纹”,设备通过分析这些特征来推断目标操作系统。以下是常见的判断方法:
1. TCP/IP 协议栈特征分析
不同操作系统在实现TCP/IP协议时存在默认行为差异,例如:
初始TTL(Time-To-Live):不同系统设置的默认初始TTL值不同(如Windows通常为128,Linux为64)。
TCP窗口大小:某些系统使用固定或动态窗口大小(如早期Windows使用
8192
,Linux可能用5840
)。TCP选项顺序:如
MSS
(最大分段大小)、Window Scale
、SACK
等选项的排列顺序可能不同。DF位(Don't Fragment):某些系统在特定包中默认设置DF位(如Linux在ICMP请求中设置)。
TCP时间戳:是否启用时间戳选项(如Windows默认关闭,Linux默认开启)。
2. 应用层协议特征
通过分析应用层协议的交互行为或响应内容:
HTTP头中的User-Agent:直接暴露客户端操作系统(如浏览器访问时的
User-Agent: Windows NT 10.0
)。SMB协议:Windows系统的SMB协议交互会包含特定版本标识(如
SMB 2.1
对应Windows 7)。Telnet/SSH响应:登录横幅可能包含系统信息(如
OpenSSH_7.4p1 Ubuntu
)。ICMP响应差异:某些系统对错误ICMP包的响应方式不同(如分片重组超时行为)。
3. 主动探测技术
如果设备支持主动扫描(如集成类似Nmap的功能),可能发送特定探测包:
SYN包探测:发送畸形或特殊标志的TCP包,观察目标响应(如ACK序号生成方式)。
FIN包探测:向关闭的端口发送FIN包,某些系统会返回RST包(如Windows),而其他系统无响应。
IP ID序列分析:不同系统的IP ID生成算法不同(如Linux使用随机增量,Windows使用固定增量)。
4. 流量行为模式
通过长期流量分析总结行为特征:
端口使用习惯:例如Windows默认开放135/445端口,Linux可能开放22(SSH)端口。
协议交互频率:如Windows系统频繁使用NetBIOS协议,而Linux更依赖SSH。
时间戳粒度:系统时钟更新的时间间隔不同(如Windows为10ms,Linux为1ms)。
5. 指纹数据库匹配
天眼设备通常内置操作系统指纹数据库(如Nmap的
nmap-os-db
),将观察到的特征与数据库中的已知模式进行匹配,综合多个参数得出概率最高的结果。
83、发现有入侵攻击,查看主机的哪些日志
系统日志:
Linux:
/var/log/syslog
或/var/log/messages
Windows: 事件查看器 -> Windows日志 -> 系统
安全日志:
Linux:
/var/log/auth.log
或/var/log/secure
Windows: 事件查看器 -> Windows日志 -> 安全
应用程序日志:
Linux:
/var/log/
目录下,如/var/log/apache2/
(Apache)Windows: 事件查看器 -> 应用程序和服务日志
防火墙日志:
Linux:
/var/log/ufw.log
(UFW)或/var/log/firewalld
(Firewalld)Windows: 取决于防火墙软件
Web服务器日志:
Apache:
/var/log/apache2/access.log
和/var/log/apache2/error.log
Nginx:
/var/log/nginx/access.log
和/var/log/nginx/error.log
数据库日志:
MySQL:
/var/log/mysql/error.log
PostgreSQL:
/var/log/postgresql/
进程和网络连接日志
命令:
Linux:
ps aux
,netstat -tuln
,ss -tuln
,lsof
Windows:
netstat -ano
,tasklist
登录日志:
Linux:
/var/log/wtmp
(last
命令查看),/var/log/btmp
(lastb
命令查看)Windows: 事件查看器 -> Windows日志 -> 安全
内核日志:
Linux:
/var/log/kern.log
入侵检测系统(IDS)日志
取决于IDS软件,如Snort日志通常位于
/var/log/snort/
计划任务日志
路径:
Linux:
/var/log/cron.log
Windows: 事件查看器 -> 任务计划程序
文件完整性检查日志
路径:
取决于工具,如AIDE日志通常位于
/var/log/aide/
84、在使用天眼时,我们要着重关注哪些地方(功能区)?
仪表盘、威胁告警、文件威胁鉴定器、分析平台、流量传感器、状态监听、规则配置、威胁检测、系统管理。
监测工作台支持用户自定义配置重点监测 数据到工作台,方便用户统一查看并使用重点关 注的系统功能模块信息。包含:
重点监测:失陷 主机、外部攻击、横向攻击、越权访 问、弱口 令、挖矿行为、暴力破解、补天漏洞。
威胁感知: 告警列表,威胁情报,web 安 全,数据库安全, 中间件安全,未授权行为,设备安全,攻击者视 角和资产视角。
分析中心:DNS 服务分析,非 常规服务分析,邮件行为分析,登录分析,web 服务器行为分析, 数据库行为分析,访问行为 分析。
资产感知:资产管理,资产发现,资产互 访,脆弱性, 配置核查。
系统配置:证书配置, 设备监控。
行为分析包括 DNS 服务分析、非常规服务分析、邮件行为分析、登录行为分析、 WEB 服务器行为分析、数据库行为分析和访问行为分析 七大模块,每个部分包含对应 的分析场景,基本涵盖行为分析的业务场景。行为分析覆盖场景丰富,根据多种威胁类 型全面检测用户 环境的异常行为。
其中 DNS 服务分析包含了子场景可疑 DNS 解析、 DNS 服务器发现、链路劫持分析、DNS 重绑定分析;
非常规服务分析 包含了子场景可 疑代理、远程工具、反弹 shell;
登录行为分析包含了子场景暴力破解、异常登录、特 权账号登录、弱口令、明文密码泄 露;
WEB 服务行为分析包括非常用请求方法发现、 可疑爬虫或扫描、后门上传利用;
访问行为分析包括外部访问、横向访问、内部主机外 联、风险端口访问。
保演习主要为了护网事件所设定,用户可以自定义护网任务,根据用户所选择的资产组进 行重点关注。护网任务一共包含三个阶段:备战阶段、实战阶段、战后任务列表。
【 自定义黑 IP】可通过本地录入和离线导入两 种方式导入黑 IP。其中本地录入支持手动添加黑 IP 和从本地批量上传黑 IP 两种方式。 离线导入 方式数据导出和离线导入两种操作。若未安装或激活黑 IP 插件,点击【导出统计数据】按钮,则 会跳转至扩展程序配置页面;若已 安装并激活黑 IP 插件,点击【导出统计数据】按钮,则跳转至 【扩展程序】->【告警分析】页面
85、天眼上显示多个不同url的SQL注入告警,可能是什么原因?
自动化攻击工具的扫描(SQLmap、BP)、网站存多个SQL注入漏洞、误报、攻击者对SQL注入漏洞的测试、waf或者防护规则失效、第三方服务或 API 被滥用、内部人员或测试行为。
多 URL 的 SQL 注入告警通常表明攻击者正在积极探测或利用漏洞。需优先确认是否存在真实漏洞,并针对性加固;若为误报,则需优化检测规则。
86、我们在天眼上遇到文件上传告警时,应急响应的流程是怎样的?
确定告警的真实性。(查看触发告警的文件上传请求的原始数据,包括上传路径、文件名、文件类型(如
.php
、.jsp
等可执行文件)、来源IP等)排除误报的可能性。文件检测:(排查上传的恶意文件)
若文件已上传至服务器,立即使用杀毒软件或沙箱环境扫描文件,确认是否为恶意文件(如WebShell、木马)。
检查文件内容是否包含可疑代码(如
eval()
、system()
等危险函数)或加密特征。请求特征分析:(分析流量获取漏洞的具体细节)
通过天眼的流量分析功能,查看HTTP请求头中的
Content-Type
、User-Agent
是否异常,或是否包含绕过检测的畸形参数(如%00
截断)。比对已知攻击特征库,确认是否为已知漏洞利用(如Apache Struts2、文件上传插件漏洞)
临时阻断:(封IP)
若确认恶意文件,立即通过防火墙或WAF封锁攻击源IP,并限制相关端口的访问。
禁用受影响的服务或目录的写入权限,防止进一步上传。
清除恶意文件:
删除已上传的恶意文件,并清理服务器临时目录(如
/tmp
)。检查服务器是否存在后门或持久化机制(如定时任务、启动项)
漏洞定位:(修复漏洞)
分析文件上传功能代码,确认是否存在未校验文件类型、未限制文件大小、路径可控等问题。
检查服务器配置(如
php.ini
禁用危险函数、目录权限设置)。修复措施:
强制校验文件扩展名和MIME类型,采用白名单机制。
对上传文件重命名(如哈希值命名),避免目录遍历攻击。
部署Web应用防火墙(WAF)规则,拦截恶意上传请求
87、同一台资产多次发出同一个告警,可能的原因?
误报、设备故障、系统故障、防御不完善。
一、攻击行为未彻底阻断
攻击者持续尝试
攻击者通过自动化工具(如爬虫、漏洞扫描器)反复尝试利用同一漏洞(如文件上传、SQL注入)。
排查点:
检查来源IP是否为同一地址或同一网段(可能为代理池或僵尸网络)。
分析攻击请求的时间间隔和规律性(如固定频率、随机间隔)。
防御措施未生效
WAF或防火墙规则未正确拦截攻击流量(如规则未覆盖攻击变种)。
排查点:
验证拦截日志是否记录该攻击IP的阻断动作。
检查WAF规则是否更新(如未识别
Content-Type: image/png
中隐藏的PHP代码)。
二、资产自身问题导致误报
业务逻辑缺陷
应用程序存在设计缺陷(如未关闭调试接口),导致正常业务请求被误判为攻击。
排查点:
对比告警请求与正常业务请求的差异(如URL参数、文件头特征)。
检查代码逻辑(如文件上传模块是否误触危险函数)。
配置错误或兼容性问题
中间件(如Nginx、Tomcat)配置错误,重复生成相同日志触发告警。
客户端兼容性问题(如老旧浏览器发送畸形请求头)。
排查点:
检查服务器配置文件的
rewrite
规则或日志格式设置。分析客户端类型分布(如
User-Agent
是否包含特定版本设备)。
三、恶意软件或后门活动
驻留型恶意程序
资产已被植入后门(如WebShell),攻击者通过后门周期性发起恶意操作。
排查点:
检查服务器进程、计划任务、启动项中的可疑项。
监控告警触发时段内的异常网络连接(如外连C2服务器)。
横向移动尝试
攻击者在内网横向扩散时,针对同一资产反复利用漏洞。
排查点:
关联内网其他资产告警(如同一内网IP发起多目标攻击)。
检查主机日志中的异常账号登录记录(如爆破成功事件)。
四、监控或告警规则问题
规则过于宽泛
告警规则阈值设置过低(如高频请求阈值不合理),或未排除合法业务特征。
排查点:
查看天眼告警规则配置(如触发条件是否包含
file_upload_count > 10/分钟
)。验证告警请求是否符合业务白名单(如内部系统自动同步文件)。
日志重复采集
多台日志采集设备(如Agent、Syslog)重复上报同一事件。
排查点:
检查日志源的唯一性(如是否同时启用主机Agent和网络流量镜像)。
五、环境或网络干扰
中间设备干扰
代理服务器、CDN或负载均衡器多次转发同一请求。
排查点:
对比原始请求与资产接收请求的IP/Header是否一致。
检查CDN缓存策略(如缓存了恶意请求)。
网络环路或重传
网络故障导致同一数据包被重复发送。
排查点:
通过流量抓包分析请求是否完全一致(包括TCP序列号)。
89、你如何理解webshell?
是一种恶意脚本,通常被黑客用来获取服务器上的执行权限,进行各种恶意操作。Webshell可以以ASP、PHP、JSP或CGI等网页文件形式存在,主要用于网站管理和服务器管理操作。然而,当被恶意使用时,它可以被用来执行系统命令、窃取用户数据、删除网页、修改主页等,对服务器安全构成严重威胁。
定义
Webshell 是运行在 Web 服务器上的脚本文件(如 PHP、ASP、JSP 等),通常通过文件上传漏洞、SQL 注入等方式植入。攻击者通过浏览器访问该脚本,远程控制服务器。
功能
Webshell 的主要功能包括:
文件管理:查看、上传、下载、删除文件。
命令执行:执行系统命令,安装软件或启动服务。
数据库操作:访问和操作数据库。
网络探测:扫描内网,攻击其他系统。
权限提升:利用漏洞提升权限,获取更高控制权。
植入方式
Webshell 通常通过以下方式植入:
文件上传漏洞:攻击者上传恶意脚本。
SQL 注入:通过注入攻击写入 Webshell。
远程文件包含(RFI):包含远程服务器上的恶意脚本。
配置不当:如目录遍历、权限设置错误等。
检测与防御
检测和防御 Webshell 的方法包括:
文件监控:监控 Web 目录的文件变化。
日志分析:检查访问日志中的可疑行为。
安全扫描:使用工具扫描已知 Webshell。
权限控制:限制 Web 服务器的权限。
输入验证:防止文件上传漏洞和 SQL 注入。
90、发现资产多次返回404,这可能是什么攻击?
正常原因
资源不存在:请求的资源确实已被删除或移动。
配置错误:服务器配置错误导致资源无法访问。
爬虫行为:搜索引擎或爬虫尝试访问不存在的 URL。
客户端缓存问题:客户端缓存了旧的 URL,导致请求失败。
DDos攻击
目录遍历攻击
暴力扫描
webshell探测
API探测
恶意爬虫
防御措施
限制访问频率:使用防火墙或 WAF 限制单个 IP 的请求频率。
屏蔽恶意 IP:将可疑 IP 加入黑名单。
隐藏敏感路径:避免暴露管理后台或敏感文件路径。
启用验证机制:对敏感路径启用身份验证。
监控和告警:设置监控系统,对异常 404 请求进行告警