2024hw蓝队面试题--4

SQL注入特征,误报原因以及怎么处理告警?

1.非法字符检测:这种类型的攻击通常会使用特殊字符,如单引号(')、双引号(")、分号(;)、注释符号(--或//)等。检测输入中是否包含这类特殊字符是识别SQL注入攻击的一种方法。

2.堆栈查询和联合查询:攻击者可能会使用UNION SELECT等语句来尝试提取数据库表的信息。另外,使用';'连接多个查询语句也是SQL注入攻击的常见特征。

3.条件操作符:如果用户的输入中包含了例如“OR ‘1’=’1”之类的语句, 那么这可能是一个SQL注入攻击。

4.使用信息函数:比如CURRENT_USER(),SYSTEM_USER(),USER等,这些都可以提供给攻击者有用的信息。

5.时间延迟和布尔盲注:例如使用 sleep、WAITFOR DELAY '0:0:10'和if语句的使用。

SQL注入的误报原因主要有:

1.正常请求中包含特殊字符:有些正常请求中可能会包含一些可能被误认为是SQL注入攻击的特殊字符,这可能会导致误报。

2.防火墙规则设置过于严格:如果防火墙或入侵检测系统的规则设置得过于严格,可能会将一些正常的请求误认为是攻击。

3.漏洞扫描工具的误报:有些漏洞扫描工具可能采用一些较为简单的检测规则,可能会产生误报。

处理SQL注入告警的方法主要有:

1.确认是否为真实攻击:可以通过分析日志、重放请求等方式确认是否为真实的攻击。

2.封禁可疑IP:针对频繁发起SQL注入攻击的IP,可以进行封禁处理。

3.修复漏洞:对于存在SQL注入漏洞的功能,尽快进行修复。注意使用参数化查询、预编译的SQL语句等手段防止SQL注入。

4.过滤非法输入:对用户的输入进行校验,严格过滤非法字符。

5.教育培训和安全设计:提升开发团队的安全意识和能力,从源头减少漏洞的出现。

文件上传绕过方法有哪些?修复方案有哪些?

1.修改文件扩展名:比如把.jpg修改为.php来试图上传服务器端脚本。

2.添加双扩展名:在某些配置下,Web服务器可能只解析最后一个扩展名,如example.jpg.php可能被解析为php。

3.绕过内容检查:如果系统只检查文件头(MIME类型),可能遭受这种攻击,攻击者在一个图像文件中插入PHP代码。

4.利用服务器配置错误:比如在Apache服务器上,可以尝试上传.htaccess文件来改变服务器配置。

5.Null Byte注入:在某些老版本的PHP中,上传文件名后面添加\0,可能会终止文件名的解析,如example.php\0.jpg可能被解析为php。

而修复文件上传漏洞,一般的建议包括:

1.限制文件类型:后端严格控制允许上传的文件类型,不仅检查扩展名,还要检查文件内容的MIME类型。

2.设置文件权限:上传文件后,禁止执行权限,防止上传的文件被执行。

3.使用随机文件名:上传文件后,将文件名更改为随机生成的名字,防止攻击者猜测文件名。

4.文件内容检查:检查上传文件的内容,防止包含恶意代码。

5.文件大小限制:限制上传文件的大小,防止DoS攻击。

6.限制文件上传数量:在一定时间内,限制用户上传文件的数量。

SSRF用哪些协议、函数,怎么绕过,修复方案有哪些

常见协议:HTTP(s)、FTP、file、dict、gopher、ldap等常见函数:

PHP:file_get_contents()、fopen()、curl_*

Java:java.net.URL()、org.apache.http 、java.net.http.HttpClient

Python:urllib.open()、requests.*

NodeJS:http.request()、axios.*

绕过手法有:

使用别名:如"127.0.0.1"与"localhost[1]"

使用十六进制、八进制、十进制:比如将"127.0.0.1"转化为"2130706433" (十进制) 或 "0x7f000001" (十六进制)

URL编码:"%20"代表空格使用混淆技术:包括点外挂,字符包含,使用反斜杠等

利用解析差异:例如放置@字符可以造成某些解析器混淆

**利用localhost[2]的别名IPv6地址:如:[::]或[::1]**

修复手法:

限制出站连接:限制服务器端发起的对内外网络的请求,如在防火墙层面限制服务器出站请求的目标IP或端口

白名单制度:仅允许已知安全的协议和目标IP进行连接

验证URL:严格验证输入的URL是否符合预期,避免重定向等攻击

禁用不必要的URL Schame:如 file://, dict:// 等

检查和过滤HTTP响应:避免敏感信息被返回

代码审计和模糊测试:针对代码中存在的可能触发SSRF的函数进行审计,同时进行模糊测试验证漏洞。

xss可以使用哪些标签,请举例列举

常见的有:

<script>、<img>、<iframe>、<embed>、<object>、<input>、<a>、<body>、<iframe>

Mssql xp_cmdshell被禁用了怎么办?

1.重新启用xp_cmdshell:如果账号有足够的权限,可以借助以下SQL命令重新启用xp_cmdshell:


EXEC sp_configure 'show advanced options', 1;
    RECONFIGURE;
    EXEC sp_configure 'xp_cmdshell', 1;
    RECONFIGURE;

这样就开启了xp_cmdshell的权限。2.使用其他存储过程:如果重新启用xp_cmdshell失败,可以尝试其他的存储过程,如用CLR存储过程来创建一个新的存储过程,这个存储过程可以执行操作系统命令。3.CLR注入攻击:通过CLR注入攻击,把攻击者控制的.NET程序集加载到SQL Server的内存中执行。4.利用有漏洞的存储过程:检查是否有其他的存储过程,或者是未修补的漏洞,这可能允许以某种方式执行系统命令。

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值