护网面试内容

1.自我介绍

2.如何判断是不是误判

分析请求、响应内容,判断是否攻击成功首先看告警事件名称判断是网络攻击事件还是web攻击事件,网络攻击事件:定位五元组信息(源IP、目的IP、源端口、目的端口、协议),对整个僵、木、蠕传播链进行分析,以攻击IP作为受害IP进行检索查找攻击源。WEB攻击事件:通过数据包的请求体、响应体、状态码等

3.值守配置 

配置:三个告警三个分析两个处置两个溯源

4.代理流量特征

代理流量特征是指通过代理服务器传输的网络流量的特点和属性。代理流量特征可以包括代理服务器IP地址、代理类型(如HTTP代理、SOCKS代理等)、代理服务器端口号、代理服务器协议等信息。

5.用过的设备

我使用过的设备包括各种防火墙、入侵检测系统(IDS)、入侵防御系统(IPS)、安全信息和事件管理(SIEM)系统等

6.内存马

内存马,顾名思义是运行在内存中的恶意代码,不像传统的webshell是有实体文件的,内存马更多是利用中间件的进程来执行恶意代码;

Java的内存马分两种:1.利用中间件的组件,修改已有组件或者动态注册新的组件,在请求经过的时候做修改来达到目的,经典的Javaweb三大件:servlet、filter、listener,还有一些中间件特有的组件,比如tomcat的valve、spring的controller等;2.通过java的instrumentation动态修改已有代码,实现ClassFileTransformer接口,进而实现命令执行等功能;

7.shiro如何判断

使用一个空的 SimplePrincipalCollection 作为 payload,序列化后使用待检测的秘钥进行加密并发送,秘钥正确和错误的响应表现是不一样的,可以使用这个方法来可靠的枚举 Shiro 当前使用的秘钥。

  1. 探测 Shiro Key,如果探测成功,则报出秘钥可被枚举的漏洞;如果探测失败直接结束逻辑
  2. 利用上一步获得的 Shiro Key,尝试 Tomcat 回显,如果成功再报出一个远程代码执行的漏洞

8.常见的未授权访问

未授权访问漏洞可以理解为需要安全配置或权限认证的地址、授权页面存在缺陷导致其他用户可以直接访问从而引发重要权限可被操作、数据库或网站目录等敏感信息泄露。

二十八种未授权访问漏洞合集(暂时最全)_metrics未授权访问-CSDN博客

9.钓鱼邮件溯源

有指纹的钓鱼邮件的溯源处理

从邮件中获取相关的信息

1.发件人地址:是否是代发邮件,一般来讲代发邮件的域名与主域名一致,如不一致,谨防钓鱼

2.发件内容的研判
根据内容的诱导性判断是否为可以的邮件,以及内容中设计到的一些信息,二维码等,留存提取出ip,域名邮件等地址,留作后续的溯源处理
3.发件附件的处置
内容会指引诱导你点击某些网址,或者下载某些程序文件,将相关样本可以在沙箱运行后尝试得到一些攻击者的服务器等基础设施的信息,留作溯源用
4.邮件的详情查看,获取域名,对方基础设施信息,ip等信息

5.沙箱运行样本文件,从中提取相关域名ip信息

无指纹的邮件处置

1.在线邮箱子域名爆破,进行下一步的信息收集
2.邮箱社工,获取到的邮箱ID昵称等,在网络上大范围的溯源

溯源方式:第一种,可以通过相关联的域名/IP进行追踪;第二种,对钓鱼网站进行反向渗透获取权限,进一步收集攻击者信息;第三种,通过对邮件恶意附件进行分析,利用威胁情报数据平台寻找同源样本获取信息,也能进一步对攻击者的画像进行勾勒。

10.红队攻击队成员组成 

11.攻击者ip一直在变怎么看他的攻击特征 

安全设备报警,如扫描IP、威胁阻断、病毒木马、入侵事件等
日志与流量分析,异常的通讯流量、攻击源与攻击目标等
​服务器资源异常,异常的文件、账号、进程、端口,启动项、计划任务和服务等
邮件钓鱼,获取恶意文件样本、钓鱼网站URL等
蜜罐系统,获取攻击者行为、意图的相关信息

12.文件上传绕过手法

  • 客户端绕过(抓包改包)
  • 服务端绕过
    • 文件类型
    • 文件头
    • 文件后缀名
  • 配合文件包含漏洞绕过
  • 配合服务器解析漏洞绕过
  • CMS、编辑器漏洞绕过
  • 配合操作系统文件命名规则绕过
  • 配合其他规则绕过
  • WAF绕过

13.webshell管理工具的流量特征

首先通过一些高危的函数判断是否为 webshell,会有频繁的 HTTP 请求,异常的请求方法base64 编码的数据

菜刀:使用 HTTP 协议通信,请求的 payload为base64编码,UA 中存在百度或者火狐,大多为POST请求,请求的地址为webshell地址,请求体中有固定字符QGluaV9zZxQo

蚁剑:很多代码源于菜刀,流量也会比较相似,使用 AES 算法进行加密,使用的UA 是固定的,请求中比较明显的特征为@ini_set("display_errors","0"),加密后的参数多数是 0x=这种形式

冰蝎:老版本的话会有个密钥协商过程,这个过程是明文传输的,响应包就会有16位的密钥,新版本各种语言的webshel中都会存在16位数的连接密码,默认变量为K,像Content-type、Accept为固定的

14.sqlserver提权

1.使用xp_cmdshell进行提权

2.使用sp_oacreate进行提权

3,使用SQL Server 沙盒提权

15.Windows提权

  1. 利用PAC内容审核不严的漏洞提升域管理员权限(MS14-068);
  2. 使用GPP权限提升漏洞提权域管理员;
  3. 绕过UAC提权漏洞;


16.Linux提权

  1. 使用linux-exploit-suggester排查内核漏洞,而后利用内核漏洞提权;
  2. 通过sudo提权,使用配置了sudo的特定二进制文件;
  3. Suid提权;
  4. GTFOBins查看可用于提权的错误配置的文件;
  • 防范:
  1. 保管好root账户密码;
  2. 日常不随意配置特权的二进制文件;
  3. 及时修补内核漏洞;

利用passwd提权:

需要对passwd文件有写入权限,写入一个uid=0的用户,用这个用户登录就可以登录到root账户。

17.sql注入预编译的原理是什么,有哪些字段不能绕过预编译?

预编译:本身是为了节省运行效率的一种机制,避免多次查询时需要多次编译,而是提前编译,固定语法树的结构。但固定后无论传入的参数是什么,都只能当做参数来处理,而不会被当做指令的一部分来运行,因此规避了SQL注入;

只要是可以固定的就都不能绕过预编译,只有动态的参数才可以,比如需要外部输入表名、库名,或者需要输入不带引号的参数,比如字段名,使用预编译会使程序无法做到功能。总结来说就是是字符串但不能加引号的位置都不能预编译;

部分模糊查询的功能无法预编译,但也可以修改进行适配;

18.sql注入sleep()函数被过滤如何解决?

使用benchmark()函数做代替,这个函数是让某个表达式进行多次的函数,可以同时达到延时和检测服务器性能的目的。

只有mysql使用sleep(),PostgreSQL的pg_sleep()函数,Microsoft SQL Server的WAITFOR DELAY语句,Oracle的DBMS_LOCK.SLEEP()函数;可以尝试其他函数,万一后台使用的不是mysql就可以注入;

19.常见的中间件有哪些?他们有那些漏洞?

1 IIS: 远程代码执行、解析漏洞
2 apache :解析漏洞,目录遍历
3 Nginx :文件解析、目录遍历、目录穿越
4 JBOSS :反序列化漏洞、 war 后门文件部署
5 weblogic :反序列化漏洞、 SSRF 任意文件上传

20.常见的端口号?攻击点?

ftp 20 21: 攻击点:匿名上传下载、嗅探、爆破
ssh 22 爆破
telent 23 攻击点:嗅探、爆破
1433 sql server 攻击点:注入、弱口令、爆破
1521:orcel 数据库 攻击点:注入、弱口令、爆破
7001:weblogic 中间件管理 攻击: java 反序列化、弱口令
6379:redis 数据库 攻击:未经授权、弱口令爆破
8080:JBOSS tomcat 攻击:反序列化、控制台弱口令
8069:zabbix 攻击:远程执行、 sql 注入

21.蓝队常用的反制手段有哪些?

1 、蜜罐(蜜罐技术本质上是一种对攻击方进行欺骗的技术,通过布置一些作为诱饵的主机、网络服务 或者信息,诱使攻击方对它们实施攻击,从而可以对攻击行为进行捕获和分析,了解攻击方所使用的 工具与方法,推测攻击意图和动机,能够让防御方清晰地了解他们所面对的安全威胁,并通过技术和 管理手段来增强实际系统的安全防护能力。)
2 、对攻击目标进行反渗透(IP 定位、 IP 端口扫描、 web 站点扫描)
3 、应用漏洞挖掘 & 利用(菜刀、 Goby 、蚁剑)
4 id----> 社交特征关联
5 、钓鱼网站– > 后台扫描、 xss 盲打
6 、木马文件— > 同源样本关联 ----> 敏感字符串特侦检测
( 反钓鱼也逐渐被蓝队重视,通过在服务器上故意放置钓鱼文件,吸引红队主动下载安装,完成反钓鱼)

22.一般情况下。那些漏洞会被高频被用于打点?

1 、阿帕奇 shiro 相关漏洞
2 log4j
3 、上传漏洞
4 、边界网络设备资产 + 弱口令
5 fastjson 漏洞

23.木马驻留系统的方式有哪些?

1 、注册表
2 、计划任务
3 、服务
4 、启动目录
5 、关联文件类型

24.判断出靶标的 CMS,对外网打点有什么意义?

CMS Content Management System 的缩写,意为“内容管理系统”。
CMS 其实是一个很广泛的称呼,从一般的博客程序,新闻发布程序,到综合性的网站管理程序都可以被称为内容管理系统。
1 、判断当前使用的 CMS 是否存在 Nday ,尝试利用公开的 poc exp 进行测试
2 、根据 CMS 特征关联同 CMS 框架站点,进行敏感备份文件扫描,有可能获得站点备份文件。尝试从 CMS 源码进行代码审计,挖掘潜在漏洞。
:
0-day ,就是只有你知道的一个漏洞!
1-day ,就是刚刚公布的漏洞(没有超过一天)。
n-day ,就是这个漏洞已经公布出来了 N 天啦!

25.根据设备告警(WEB)如何分析流量?

1. 下载告警pcap数据包,根据告警提示攻击类型,过滤payload信息,定位流量2. 判断是否攻击成功,需具体分析攻击请求响应内容或使其payload进行攻击测试等3. 最终可根据流量分析给出判定类型:扫描、攻击尝试、攻击成功、攻击失

26.说下服务器被上传webshell处置思路是什么?(常问) 

及时隔离主机使用find命令查找定位webshell,对webshell进行取样结合web日志分析清除webshell及残留文件

27.sql注入 (原理、危害、防御)

原理:将原本的sql语句在用户可控的参数经过了替换、拼接字符串等操作,得到了一个新的sql语句并在数据库的解析下,达到了非预期的注入效果

危害:由于注入达到了非预期的效果,有可能导致数据库大量泄漏数据,甚至被删库,如果数据库开启文件读写权限,还可能导致服务器被写入木马

防御:SQL 注入的防御:SQL 注入的防御一般从三个方向开展:1. 集成安全防御工具,如 WAF 等。通常可以拦截大部分的攻击流量,但并不绝对,存在一定的绕过风险;2. 黑白名单限制。黑名单主要体现在参数格式、参数长度、特殊字符、转义或编码后的特殊字符等,但是由于绕过方式层出不穷,黑名单很容易出现纰漏,白名单主要应用在对动态表列名、排序等场景下,仅允许指定的参数通过,安全性较高;3. 预编译SQL。也是目前最流行最有效的方案,几乎所有的持久层框架都是使用这种技术。预编译其实就是 SQL 引擎预先对 SQL 语句进行分析编译,然后再去填充参数,目前来说这种技术是可以完全防御 SQL 注入的。

类型:联合注入、报错注入、布尔注入、时间注入、堆叠注入、宽字节注入、二次注入、dnslog注入、中转注入

28.SQLMap 如何 Post 请求发起扫描?

SQLMap 发送 Post 请求通常有三种方式:

1.使用 --data 参数,参数格式与 URL 参数相同,如: sqlmap -u http://xxx.xxx.xxx/login.html --data "id=1&name=xxx";
2.保存 Post 请求包(通常使用 bp, 假设保存为 post.txt),然后使用 -r指定请求包文件,如: sqlmap -r "C:\Users\Administrator\Desktop\post.txt";
3.扫描 form 表单,如: sqlmap -u http://xxx.xxx.xxx/login.html --forms

29.SQL 注入的流量有什么特征?

1.参数长度异常。大多数的 SQL 注入参数由于需要截断、拼接、构造等操作,会导致参数的长度比较长;
2.特殊字符。大多数的 SQL 注入会包含如 '、 "、)、;、#、--、

你可能感兴趣的:(web渗透知识,面试,职场和发展)