渗透测试岗面试题汇总

2023-10-27

有些是网上整理的渗透测试岗⾯试问题,有些 HW ⾯试的题,已经收集好了,提供给⼤家。现在就是毕业季节,希望各位都能找到好⼯作。

还有一部分是根据回忆总结的,部分问题可能描述的有些问题。安全的体系很大,这些只是冰山一角而已。感兴趣的同学可以点击我的gitee地址,面试题及答案都已汇总到gitee仓库当中。

gitee仓库地址:https://gitee.com/bafangwy-domain/Network-security

觉得有帮助的话,别忘记点点收藏~

 

 

1、JWT(json web token)攻击手法(头部、负载、签名)?

  • 未校验签名 解码后换内容再编码
  • 禁用哈希 算法修改为none
  • 暴破弱密钥
  • 操纵Key ID 原因是key ID 里的内容可能被作为参数进数据库或者查询 (SQL注入、目录遍历、命令注入)


2、如何实现跨域?

  • jsonp跨域
  • CORS跨域
  • 代理跨域请求(CDN)
  • Html5 postMessage 方法
  • 修改 document.domain 跨子域(可跨同级域或父域)
  • 基于 Html5 websocket 协议


3、jsonp跨域和CORS跨域的区别?(严格说这两种都属于CSRF漏洞)

  • jsonp是jquery提供的跨域方式
  • cors是w3c提供的一个跨域标准
  • ——————————————————————
  • jsonp只支持get方式的跨域
  • cors支持get和post方式的跨域
  • ——————————————————————
  • jsonp支持所有的浏览器(因为所有浏览器都可以使用script标签发送请求)
  • cors不支持IE10以下的浏览器


4、SSRF漏洞利用

本地:

  • 文件读取:file:///etc/passwd
  • 使用dict协议获取Redis配置信息:dict://127.0.0.1:6379/info
  • 使用gopher协议一键反弹Redis(未授权访问) shell fastcgi
  • 攻击内网中比较脆弱的服务:Redis、数据库、fastcgi等

远程:

  • 读文件发送到远程服务器
  • 跳板


5、DNS外带可以用在那些漏洞?

  • sql
  • 盲XXE和SSRF
  • XSS无回显
  • 命令执行无回显


6、数据库种类?

  • 关系型数据库(SQL):MySql、Oracle、MSSQL、Access、Sqlite、postgersql
  • 非关系型数据库(NO SQL):mongodb、Redis
  • Xml文件:Xpath注入


7、SQL和NoSQL的区别?

  • SQL优点:结构稳定、逻辑性强、易于理解
  • SQL缺点:不适于高并发、不适于海量数据高效读写、维护开销大、相对nosql速度慢
  • NoSql优点:易扩展、数据结构灵活、查询速度快
  • 比较:没有好坏之分,只看应用环境。关系型数据库可靠性更强、适用于银行等数据精度要求高的环境。非关系型数据库适用于高并发、大量数据库交互、数据准确度不高的环境。


8、文件上传绕过?

轻量级检测绕过
a.绕过前端JavaScript检测:使用Burp抓包改包。
b.绕过服务器端MIME类型检测:使用Burp抓包改包。
路径/文件扩展名检测绕过
a.黑名单检测方式
大小写、扩展名(php4)
特殊文件名绕过;
0x00截断绕过;
.htaccess文件攻击(windows流)
b.白名单检测方式
截断绕过
Content-Disposition: form-data; Content-Type: application/octet-stream
这两项 加减空格 变换大小写 字符串拼接(form-data->form-da+ta)
双文件上传
上传木马时,提示格式错误 直接抓包修改Content-Type 为正确的格式尝试绕过
文件内容检测:
1、正常图片末尾添加一句话木马
2、二次渲染
3、文件头检测
PNG 的文件头为十六进制的 89 50 4E 47 0D 0A 1A 0A
GIF 为 47 49 46 38 37 61 GIF89a
JPG 为 FF D8 FF E0
文件编辑器上传:FCKEditor、Ewebeditor、UEditor、KindEditor、XHditor


9、open_basedir访问目录限制绕过方法?

利用命令执行函数bypass(system(‘cat /etc/passwd’);
推特最新Bypass(chair()函数改变工作目录)
mkdir(“/tmp/fuck”);
chdir(‘/tmp/fuck/‘);
ini_set(‘open_basedir’,’..’);
chdir(‘..’);
chdir(‘..’);
chdir(‘..’);
chdir(‘..’);
ini_set(‘open_basedir’,’/‘);
var_dump(file_get_contents(“/etc/passwd”));
glob伪协议
<?php
$a = “glob:///var/www/test/.txt”;
if ( $b = opendir($a) ) {
while ( ($file = readdir($b)) !== false ) {
echo “filename:”.$file.”\n”;
}
closedir($b);
}
?>


10、php爆绝对路径方法?

  • 单引号爆路径
  • 错误参数值爆路径
  • Google爆路径
  • Site:xxx.edu.tw warning
  • 测试文件爆路径(test.php、1.php、ceshi.php、info.php)
  • phpmyadmin爆路径
  • /phpmyadmin/libraries/lect_lang.lib.php
  • 配置文件找路径


11、常见后门方式?

windows:
1.替换系统文件类(shift后门,放大镜后门)
2.修改注册表类
自启动项、屏幕保护程序注册表、用户登陆初始化、映像劫持、影子账户、文件关联
3.文件类
自启动文件夹、office启动劫持
4.计划任务 schtasks 、WMI、bitsadmin
Linux
1.预加载型动态链接库后门
2.SSH 后门
3.SUID后门
4.vim后门
5.PAM后门
6.进程注入
7.Rootkit
8.端口复用


12、发现IIS的网站,怎样试它的漏洞?(根据版本)

1、IIS5.0/6.0/7.5解析漏洞
2、IIS7.5 NET源代码泄露和身份验证漏洞
3、IIS7.5ASP验证绕过
4、IIS 6.0安装PHP绕过认证漏洞/IIS PUT (webDAV)这应该算是一个配置漏洞吧


13、如果存在 SQL 注入怎么判断不同的数据库?

(1)注释符判断
/是 MySQL 中的注释符,返回错误说明该注入点不是 MySQL;
继续提交如下查询字符:–是 Oracle 和 MSSQL 支持的注释符,如果返回正常,则说明为这两种数据库类型之一。
继续提交如下查询字符:;是子句查询标识符,Oracle 不支持多行查询,因此如果返回错误,则说明很可能是 Oracle 数据库。
(2)函数判断
and (select count()from MSysAccessObjects)>0 access 数据库
and (select count()from sysobjects)>0 返回正常说明是 mssql 数据库
and length(user())>10 返回正常说明是 Mysql
Oracle 可以根据 from dual 虚拟库判断
(3)根据语言和中间件常识
Asp和.net通常使用sqlserver
Php通常使用mysql或者postgresql
Java通常是oracle或mysql
IIS服务器是基于windows的架构,后台数据库有可能是sqlserver
Apache服务器,可能使用开源数据库mysql或postgresql


14、鱼叉式攻击和水坑攻击?

鱼叉式钓鱼攻击一般通过电子邮件等电子通信方式进行,针对特定个人、组织或企业,窃取的资料信息更敏感更有价值。主要通过诱使点击恶意连接或者输入账号密码获取信息。
水坑攻击算是鱼叉攻击的延伸:
攻击者定期观察受害者或特定团体经常访问的网站,然后用恶意软件感染这些网站。
然后寻找这些网站的漏洞,并将恶意编程代码(通常以JavaScript或HTML形式)注入到网站上显示的广告或横幅上。
然后恶意代码会将受害者重定向到存在恶意软件或恶意广告的网络钓鱼网站上。
当受害者访问这些网站时,受害者的计算机就会自动下载包含恶意软件的脚本。
然后恶意软件会收集受害者的个人信息,并将其发送给攻击者操作的C&C服务器。
其他的钓鱼方式:
钓鱼WiFi、伪基站、钓鱼二维码、U盘钓鱼


15、中间件漏洞总结?

(一) IIS
1、PUT漏洞
2、短文件名猜解
3、远程代码执行
4、解析漏洞
(二) Apache
1、解析漏洞
2、目录遍历
(三) Nginx
1、文件解析
2、目录遍历
3、CRLF注入
4、目录穿越
(四)Tomcat
1、远程代码执行
2、war后门文件部署
(五)jBoss
1、反序列化漏洞
2、war后门文件部署
(六)WebLogic
1、反序列化漏洞
2、SSRF
3、任意文件上传
4、war后门文件部署
(七)其它中间件相关漏洞
1、FastCGI未授权访问、任意命令执行
2、PHPCGI远程代码执行


16、XSS?(XSS的根源主要是代码层没有对输入输出做好过滤)

反射性XSS都是把恶意数据传入服务器,不过滤再回传浏览器造成的;
DOM型XSS主要是通过改变浏览器页面的DOM节点形成的,可能不会经过服务器(PHP_SELF)
存储型XSS主要是从数据库里取出来输出到浏览器时没有做实体化编码过滤。
XSS蠕虫的产生条件:(不一定需要存储型XSS)
一个是产生XSS点的页面不属于self页面
用户之间产生交互行为的页面
XSS防护
处理输出编码,js转译.实体化编码
黑白名单过滤(编码限制,标签限制,符号限制)
跨域限制
CSP内容安全策略(浏览器前端防护策略) 的实质就是白名单制度,开发者明确告诉客户端,哪些外部资源可以加载和执行,等同于提供白名单。将同源同域发挥到极致。它的实现和执行全部由浏览器完成,开发者只需提供配置。CSP 大大增强了网页的安全性。攻击者即使发现了漏洞,也没法注入脚本,除非还控制了一台列入了白名单的可信主机。主要防止XSS漏洞,但是不能杜绝XSS。
绕过:
Html5新标签属性
JavaScript伪协议
编码混淆


17、中间人攻击(Burp抓包原理)?

中间人攻击是一个(缺乏)相互认证的攻击;由于客户端与服务器之间在SSL握手的过程中缺乏相互认证而造成的漏洞 (攻击方式SSLSniff、SSLStrip)
防御中间人攻击的方案通常基于以下几种技术:
1.公钥基础建设PKI 使用PKI相互认证机制。
2.延迟测试
使用复杂加密哈希函数进行计算以造成数十秒的延迟;如果双方通常情况下都要花费20秒来计算,并且整个通讯花费了60秒计算才到达对方,这就能表明存在第三方中间人。
3.使用其他形式的密钥交换形式
ARP欺骗:
原理:
每台主机都有一个ARP缓存表,缓存表中记录了IP地址与MAC地址的对应关系,而局域网数据传输依靠的是MAC地址。在ARP缓存表机制存在一个缺陷,就是当请求主机收到ARP应答包后,不会去验证自己是否向对方主机发送过ARP请求包,就直接把这个返回包中的IP地址与MAC地址的对应关系保存进ARP缓存表中,如果原有相同IP对应关系,原有的则会被替换。这样攻击者就有了偷听主机传输的数据的可能
防护
1.在主机绑定网关MAC与IP地址为静态(默认为动态),命令:arp -s 网关IP 网关MAC
2.在网关绑定主机MAC与IP地址
3.使用ARP防火墙


18、数据库存储引擎?

数据库体系结构由客户端连接层、数据库服务层及存储引擎层组成。
存储引擎是数据库中具体与文件打交道的子系统,存储引擎底部是物理存储层,是文件的物理存储层,包括二进制日志、数据文件、错误日志、慢查询日志、全日志等。
不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能
InnoDB:主流的存储引擎。(MySQL)
MyISAM:访问速度快,不支持事务,逐渐被淘汰
MEMORY:BTREE索引或者HASH索引。


20、PHP代码审计中容易出问题的点?

1、弱类型(比较、字符类型转换)
intval函数四舍五入(小数取整绕过)
intval函数转换字符串
if($a>1000){
mysql_query(‘update … …. set value=$a’)
} //$a一定是整数。然而,你输入1002/*/union 也能进入这个语句
数组转字符串
Array转换整型int/浮点型会返回元素个数;
Array转换bool返回Array中是否有元素;
Array转换成string返回Array,并抛出warning。
MD5()函数===使用数组绕过 ?username[]=1&password[]=2 数组hash之后都是null
MD5()函数==,使用md5碰撞 ?username=s878926199a&password=s155964671a hash碰撞+弱类型
2、函数缺陷
Strcmp()函数 无法比较数组,比较时报错并返回0 PHP5.3之前版本
ereg正则%00截断 16.php?nctf=1%00%23biubiubiu 支持5.3之前版本的php之后使用preg_match()函数替代(也有绕过分析)
strpos出错返回的也是null 原来是判断字符串,我们传入一个数组返回值就是null null!=false
序列化:将php中对象、类、数组、变量、匿名函数等,转化为字符串 方便保存到数据库或者文件中(将状态信息保存为字符串)
unserialize()反序列化参数可控
iconv在字符编码转换时可能导致字符串截断。上传的文件名为shell.php{%80-%99}.jpg 上传绕过
filter_var ( url,FILTER_VALIDATE_URL )使用PHP内置特定过滤器过滤url
可能使用伪协议绕过,再次输出url时造成XSS
?url=javascript://comment%250a alert(1)
foreach 语句滥用造成的变量覆盖
3、默认缺省参数缺陷
in_array(a,array,FALSE)函数 检查数组中是否存在某个值
第三个参数默认为FALSE,若粗心的开发没有写第三个参数为true的话,比较过程只进行弱类型检查,容易产生绕过
htmlentities(string,缺省参数) 将字符转换为 HTML 转义字符
三大缺省参数:
ENT_COMPAT(默认值):只转换双引号。
ENT_QUOTES:两种引号都转换。
ENT_NOQUOTES:两种引号都不转换。
同样的若是开发人员不专心,没加缺省参数,造成单引号逃逸


21、IP伪造

由于TCP需要三次握手连接,在实现正常的TCP/IP 双方通信情况下,是无法伪造来源 IP 的,也就是说,在 TCP/IP 协议中,可以伪造数据包来源 IP ,但这会让发送出去的数据包有去无回,无法实现正常的通信 但是一些DDoS攻击可以
后端IP获取来源
REMOTE_ADDR是远端IP,默认来自tcp连接客户端的Ip。可以说,它最准确,确定是,只会得到直接连服务器客户端IP。如果对方通过代理服务器上网,就发现。获取到的是代理服务器IP了。
HTTP_X_FORWARDED_FOR 为了能在大型网络中,获取到最原始用户IP,或者代理IP地址。对HTTp协议进行扩展,定义的实体头。 后端处理若这种方法,可能会造成XFF注入和伪造IP绕过访问限制
X-Real-IP X-Forwarded-For在无代理时可以理解为用户的IP地址,有反向代理时,先将REMOTE_ADDR赋给X-Real-IP,最后可以从X-Real-IP中获取用户的IP。
CDN-Src-IP CDN节点会以某种方式将源客户端的IP传递给源服务器


22、sql注入过滤了逗号,怎么弄?

1、可以用join
select id,ip from client_ip where 1>2 union select from ((select user())a JOIN (select version())b);
2、可以用from 1 for 1
select substr(database() from 1 for 1);
select mid(database() from 1 for 1);
3、offset
select * from news limit 0,1
等价于下面这条SQL语句
select * from yang limit 1 offset 0


22、了解过websocket吗?

它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种。
其他特点包括:
(1)建立在 TCP 协议之上,服务器端的实现比较容易。
(2)与 HTTP 协议有着良好的兼容性。
(3)数据格式比较轻量,性能开销小,通信高效。
(4)可以发送文本,也可以发送二进制数据。
(5)没有同源限制,客户端可以与任意服务器通信。
(6)协议标识符是ws(如果加密,则为wss),服务器网址就是 URL。


23、DDOS是什么? 非正常的数据包(syn,flood)等

分布式拒绝服务攻击(DDoS)是目前黑客经常采用而难以防范的攻击手段。DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。
随着计算机与网络技术的发展,计算机的,内存大大处理能力迅速增长增加,可以缓解DDoS攻击。但是多台傀儡机同时发送也受不了。
CC攻击
模拟多个正常用户不停地访问如论坛这些需要大量数据操作的页面,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的请求,网络拥塞,正常访问被中止。这种攻击技术性含量高,见不到真实源IP,见不到特别大的异常流量。
CC攻击与传统DDoS的不同
攻击对象不同:DDoS针对IP,CC针对网页
流量大小不同:DDoS需要的流量更大
危害不同:DDoS危害大,CC危害时间长
门槛不同:DDoS需要大量傀儡机,CC更容易利用
被攻击的服务器有以下症状
有大量等待的TCP连接;
网络中充斥着大量的无用的数据包,源地址为假;
网络拥塞,受害主机无法正常和外界通讯;
造成死机。
DDoS防护
网络设备设施(加带宽、硬件防火墙、高性能设备)
负载均衡CDN、分布式集群防御
流量清洗服务
限制特定流量、过滤不必要服务和端口
Syn洪流
向服务器发送了SYN报文后突然死机或掉线,服务器第三次握手找不到客户端,会进行重试,就是重试这个时间,一般是分钟级的
IP欺骗DOS攻击
发假IP,连接不成功,服务器清空缓存重连的时间空隙
UDP洪水攻击
无用数据流占用带宽
Ping洪流攻击
声称自己的数据包大于64K,对方服务器看到这个声称后,内存分配错误,导致TCP/IP堆栈错误而死机
Land攻击
特别打造的SYN包,它的原地址和目标地址都被设置成目标服务器地址。接受服务器向它自己的地址发送 SYN-ACK消息,结果这个地址又发回ACK消息并创建一个空连接。被攻击的服务器每接收一个这样的连接都将保留,直到超时


24、当你输入一个网址会发生什么?

1)找域名对应IP(找dns、依次是浏览器缓存、系统缓存、路由器缓存、ISP缓存、递归搜索)
2)应用层-浏览器给Web服务器发送一个Http请求
3)传输层-HTTP数据包会嵌入到TCP报文中
4)网络层-TCP报文段嵌入IP数据包中
5)网络接口层-IP数据包嵌入到帧中,在网络中传输
6)网关转发到达相关服务器,请求对应端口的服务
7)服务器返回一个HTTP响应
8)浏览器以相同的步骤,读取HTTP响应的内容,解析页面


25、webshell检测思路?

静态检测 匹配特征码
动态检测 cmd bash等敏感应用异常启用
日志检测 HTTP异常请求模型检测
语法检测 关键危险函数的捕捉
计划任务 防止后门


26、GPC是什么?开启了怎么绕过

php.ini中的magic_quotes_gpc,默认为off,如何打开了,会实现addslashes()和stripslashes()的功能,对于从GET,POST,COOKIE输入的单引号、双引号、反斜线和NULL会加反斜线进行转义
绕过:
http的请求头的内容是可以在$_SERVER读取的,可将其作为传参变量
二次注入
编码解码绕过(UTF-7、GBK、二次编码等)
代码审计—单引号逃逸


27、web常用的加密算法有什么

单向散列加密 MD5、SHA、MAC
对称加密 AES、DES
非对称加密 RSA、RSA2
前端加密 RSA、MD5、AES
对称加密:加、解密使用的同是一串密钥 效率高 不安全
非对称加密:加、解密使用不同的密钥,互相加解密 效率低 安全 https就是这个


28、XSS除了获取cookies还能干嘛?

  • 获取服务器真实ip
  • xss蠕虫
  • 钓鱼攻击
  • 前端JS挖矿
  • 获取键盘记录


29、网络安全事件应急响应

  • 取证,登录服务器
  • 备份,检查服务器敏感目录
  • 查毒(搜索后门文件 - 注意文件的时间,用户,后缀等属性),调取日志(系统日志,中间件日志,WAF日 志等);
  • 处理,恢复备份(快照回滚,最近一次),确定入侵方法(漏洞检测,并进行修复)
  • 溯源,查入侵IP,入侵手法(网路攻击事件)的确定等
  • 记录,归档—-预防-事件检测-抑制-根除-恢复-跟踪-记录
  • 通用漏洞的应对等其他安全应急事件


30、HTML5新的安全特性

iframe沙箱 默认除了显示静态页面以外,不准提交表单、不准弹窗、不准执行脚本
CSP内容安全策略
Flash加载取消


31、病毒,木马,蠕虫的区别?

病毒,木马,蠕虫统称为电脑病毒。
病毒是编制者在计算机程序中插入的破坏计算机功能或者数据的代码。
木马是指通过特定的程序来控制另一台计算机。(一句话木马)
蠕虫是一种能够利用系统漏洞通过网络进行自我传播的恶意程序。(XSS蠕虫)

病毒、蠕虫的共同特征是自我复制、传播、破坏电脑文件。
木马伪装、潜伏在电脑中、窃取资料、远程操控。


32、对于云安全的理解?

权限管理,内网威胁,信息泄露,过于依赖托管厂商


33、防止XSS,前端后端两个角度?

前端:尽量不要使用直接拼接 HTML 的方法,如果框架允许,使用 createElement之类的方法实现。或者采用比较成熟的渲染框架,如 Vue
CSP策略
后端:实体化编码、长度截取、过滤


34、虚拟机逃逸

虚拟机逃逸指的是突破虚拟机的限制,实现与宿主机操作系统交互的一个过程,攻击者可以通过虚拟机逃逸感染宿主机或者在宿主机上运行恶意软件。


35、如何防范羊毛党?

相应的活动门槛和限制(什么用户、次数)
对于有猫池、卡池的采用封IP、封用户、增加验证码、身份核验


36、Mysql一个@和两个@什么区别

一个@是 用户自定义的变量
两个@是 globa(全局变量)l或session变量


37、webshell已经上传如何禁止菜刀等工具连接

安全狗拦截、扫描木马删除、可以流量分析(蚁剑、冰蝎流量免杀)
绕过防护:改超全局变量法、改连接函数法@eval(base64_decode($_POST[action]));


38、一个互联网网站端口如何防护,发现入侵如何解决?

如何防护:防火墙、WAF、IPS(入侵防御系统)、IDS(入侵检测系统)
如何解决:关闭危险服务如SMB、RDP、数据库端口不对外网访问 封禁ip,查看日志。


39、NAT的两种模式

SNAT: 源网络地址转换
原理:修改数据包的源地址。源NAT改变第一个数据包的来源地址,它永远会在数据包发送到网络之前完成,数据包伪装就是一具SNAT的例子。
将内网发出的请求报文原地址转换成自己的地址发往远端服务器,对回来的响应报文在作做反向处理,类似网络代理。
DNAT:目的网络地址转换
原理:修改数据包的目的地址。Destination NAT刚好与SNAT相反,它是改变第一个数据包的目的地地址,如负载、端口转发和透明代理就是属于DNAT。
将内网服务端口映射在公网出口地址上。
NAT不仅能解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机


40、企业内部安全

  • 物理威胁:门禁、监控、禁止USB设备接入、封闭PC、定时巡检
  • 网络威胁:部署行为管控设备、可靠的网络结构、IP和MAC地址绑定,将网络行为分组、限制不必要的软件和通信协议、定期审核日志


41、eval和system的区别?

eval类型函数是代码执行
system类型函数是命令执行
eval函数里必须是一个符合php语法的语句,如果语句结尾没有分号会报错
<?php
system(“whoami”); //whoami命令被执行
eval(“whoami”); //whoami命令不被执行
?>
<?php
eval(“phpinfo();”); //phpinfo()被执行
system(“phpinfo()”); //phpinfo()不被执行
?>
<?php
$num=1;
eval(“\$a = $num;”); //有效,$a=1
system(“\$b = $num;”); //无效,$b=NULL
?>
代码执行函数:eval、assert、call_user_func、create_function、array_map
命令执行函数:system、passthru、exec、pcntl_exec、shell_exec、popen()、``


42、python 黑科技之迭代器、生成器、装饰器

迭代器:是一种访问集合元素的一种方式。 可迭代对象 list、set和dict
生成器:保存的是算法,又叫生成器函数。
装饰器:不改变原来函数功能的基础上增加其他功能。


43、缓冲区溢出原理和防御

通过往程序的缓冲区,写入超出其长度的内容,造成缓冲区的溢出,从而破坏程序的“堆栈”,使程序转而执行其它指令,以达到攻击的目的。造成“缓冲区溢出”的原因是,程序中没有仔细检查用户输入的参数。


44、进程和线程

进程是操作系统分配资源的最小单元, 线程是操作系统调度的最小单元。
一个应用程序至少包括1个进程,而1个进程包括1个或多个线程,
每个进程在执行过程中拥有独立的内存单元,线程在执行过程中共享内存。


45、MS08-067漏洞原理分析

445端口,SMB网络服务和MSRPC网络服务相关,缓冲区溢出造成的远程代码执行


46、http代理

普通代理:这种代理扮演中间人角色 类似burp
隧道代理:HTTP 客户端通过 CONNECT 方法请求隧道代理创建一条到达任意目的服务器和端口的 TCP 连接,并对客户端和服务器之间的后继数据进行盲转发。 类似机场节点


47、MySQL 4.1/5.0/5.5各版本的主要区别?

4.1 增加了子查询的支持,字符集增加UTF-8
5.0 增加了INFORATION_SCHEMA系统数据库
5.5 默认存储引擎更改为InnoDB、引入了一种新的性能架构P_S,用于mysql监控服务器运行时的性能


48、什么是CRLF注入攻击?(%0d%0a)(\r\n)

是一种当用户将回车换行字符插入到应用中而触发漏洞的攻击技巧。
当该字符与HTTP协议请求和响应的头部一起联用时就有可能会出现各种各样的漏洞,包括http请求走私和http响应拆分。
http请求走私:
缓存毒化—攻击者可以修改缓存中的内容然后不显示正常页面而显示恶意页面。
防火墙逃逸—攻击者通过构造数据包来逃避安全检查(两个包),通常会利用CRLF和构造超大的数据包。
请求劫持—攻击者可以通过该利用获取HttpOnly的cookie和http认证数据,类似于xss但是不需要攻击者和黑客进行交互。
http响应拆分:加入一些请求头,造成类似XSS的攻击效果


49、内网黄金票据、白银票据的区别和利用方式

(1)白银票据:抓取到了域控服务hash的情况下,在客户端以一个普通域用户的身份生成TGS票据,并且是针对于某个机器上的某个服务的,生成的白银票据,只能访问指定的target机器中指定的服务。
(2)黄金票据:直接抓取域控中账号的hash,在客户端生成一个TGT票据,那么该票据是针对所有机器的所有服务


50、预编译能否100%防sql注入? 不能

预编译原理:
先将查询语句固定
通过函数将传参变为字符串
拼接字符串去执行
你的关键字根本不会当作关键字去执行
$pdo->query(‘SET NAMES gbk’);
$var = “\xbf\x27 OR 1=1 /“;
$query = ‘SELECT FROM test WHERE name = ? LIMIT 1’;
$stmt = $pdo->prepare($query);
$stmt->execute(array($var)); 类似于宽字节注入


51、reverse_tcp 和 bind_tcp 的区别?

(1)reverse_tcp 木马会主动连接目标服务器 测试机主动连接攻击机
(2)bind_tcp 木马会监听本地的端口 攻击机主动连接测试机
采用reverse的方法一般较为安全,因为是在测试机连接攻击机,所以一般不会被防火墙发现;而bind在测试机打开端口时很容易被安全软件和防火墙发现


52、谈谈对安全的理解

互联网的发展便捷了生活,也带来了安全问题
安全是相对的,打破安全壁垒的代价如果高于安全保护的价值,就可以说是安全的
渗透测试中安全的本质是一种信任机制,是否每次都对用户发来的请求做安全验证
安全是一群不走寻常路、不按常规出牌的人摸索出来的
攻防相互促进(漏洞填堵、绕过)


53、CMS指纹规则

  • Website 官方网站
  • JS文件
  • Headers 匹配的请求头信息
  • Cookies 匹配的cookies字段
  • Version 版本信息
  • Product 产品名称匹配
  • Meta特征
  • URI特征


54、如何保护dom不被修改 防止dom xss

  • 浏览器写入页面渲染前先转义
  • 不要使用eval函数处理不可控的外部数据 JS中
  • 使用filter.js库 filter.js由一系列针对常见业务场景下造成DOM XSS的恶意数据开展过滤的函数组成。


55、python爬虫的常见问题

  • 爬虫常用模块:requests、BeautifulSoup、lxml、re、xpath、selenium、数据存储、txt/csv/mysql
  • Selenium(无界面浏览器)突破JS加密
  • 传统爬虫多线程 现在提倡异步IO协程 异步IO模块主要有aiohttp、aiomysql、asyncio
  • 推荐的爬虫策略:爬取之后写入数据库,单独写提取、过滤办法 防止需求改了重新爬取
  • 网络池解决增量爬取、断点续爬、去重
  • GIL 全局解释器锁 为保证线程安全的资源锁


56、IDS/IPS防护原理及绕过思路

IDS工作在网络层,旁路部署,通过抓取和分析网络流量来发现攻击;
IPS一般也是在网络层旁路,可以理解为具备阻断能力的IDS,是IDS的升级版(也有IDS检测到攻击通知阻断设备执行阻断动作的设备联动模式),可以覆盖网络层和应用层;
WAF是在应用层防护Web攻击的程序,一般是跟Web接入层对接,可旁路可串行,仅能覆盖应用层
绕过:
1、TCP分片重组
2、IP分片Python下的组件Scapy
3、伪造TCP状态
4、IPv6 正在服役的IDS/IPS/WAF不一定支持


57、运营商(或其他)网络劫持

本地劫持:魔改浏览器(hao123)
网络劫持:运营商劫持(数据包注入广告劫持代码)、cdn缓存污染(CDN服务器中的关键JS文件被污染注入)、DNS劫持(路由器漏洞)


58、红蓝对抗中蓝队反杀红队场景和姿势?

蚁剑反杀rce、蜜罐、宏病毒诱饵


59、验证码相关利用点

1、验证码可重用 (特定账户暴力破解、CSRF)
2、验证码可识别 (特定账户暴力破解)
3、验证码在客户端生成、显示、校验 (特定账户暴力破解、CSRF)
4、空验证码绕过 (特定账户暴力破解、CSRF)
5、验证码数量有限 (特定账户暴力破解)
6、是否校验客户端可控 (特定账户暴力破解、CSRF)
7、验证码可预测 (特定账户暴力破解)
8、错误超过一定次数才开启验证码 (撞库)


60、为什么aspx木马权限比asp大?

aspx使用的是.net技术。IIS 中默认不支持,ASP只是脚本语言而已。入侵的时候asp的木马一般是guest权限…APSX的木马一般是users权限。


61、内网服务器,如何进行信息收集?

(1)手动,用一些小工具(批量看存活)
new user /domain查域、net view看共享、hosts文件内网ip域名映射、wifi记录和密码、浏览器中的密码、敏感文件、各类服务的配置文件中信息、历史命令、ssh私钥、FTP的连接信息、xshell等ssh连接工具的session文件,3389连接历史和被连接历史信息、某些内网api接口未授权访问
(2)扫描器
主机扫描、端口扫描、漏洞扫描、识别内网环境、密码爆破、抓密码
(3)留后门,抓信息


62、只有一个登录页面有哪些思路

注入、万能密码、爆破、JS里面的敏感信息(接口未授权访问)、密码找回、敏感目录,注册后尝试越权(或者进入系统后再看看)


63、token和referer做横向对比,谁安全等级高?

token安全等级更高,因为并不是任何服务器都可以取得referer,如果从HTTPS跳到HTTP,也不会发送referer。并且FLASH一些版本中可以自定义referer。但是token的话,要保证其足够随机且不可泄露。(不可预测性原则)
对referer的验证,从什么角度去做?如果做,怎么杜绝问题
空referer,referer正则过滤不完善。
针对token,对token测试会注意哪方面内容,会对token的哪方面进行测试?
重放、分析加密规则、结合信息泄露缓存日志替换越权


64、栅栏密码

把要加密的明文分成N个一组,然后把每组的第1个字连起来,形成一段无规律的话。
不过栅栏密码本身有一个潜规则,就是组成栅栏的字母一般不会太多。
凯撒密码是栅栏密码的一种


65、一个互联网网站端口如何防护,发现入侵如何解决?

防火墙,waf,ips,ids,终端准入,网页防篡改,规范开发代码,关闭危险服务例如SMB,RDP,数据库端口不对互联网访问等,发现异常入侵可在防火墙封禁ip,或者是查看日志。


66、cookie响应消息头的secure和HttpOnly分别作用是什么?

secure:在Cookie中标记该变量,表明只有当浏览器和web server之间的通信协议为加密认证协议时,浏览器才向服务器提交响应的Cookie。
Httponly:禁止Javascript读取(防XSS)


67、如何生成一个安全的随机数?

通过一些物理系统生成随机数,如电压的波动、磁盘磁头读/写时的寻道时间、空中电磁波的噪声等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

渗透测试岗面试题汇总 的相关文章

  • 2024年一套超详细Java面试精华资料,让进大厂少走弯路

    在座的诸位有没有是自学Java的 有的话评论区给我扣个1看看 但凡自学过的同学都知道有多难 虽说现在互联网非常发达 不明白的上网一搜就有很多资料 不过大多质量不高 而且非常碎片化 实在很难梳理成一个可持续成长的体系 所以有了这篇文章 我结合
  • 蜜罐技术是指什么?

    特殊设计的安全措施 蜜罐技术 是一种特殊设计的安全措施 其主要目的是为了吸引并诱骗潜在的 网络攻击者 这种技术涉及布置诱饵主机 网络服务和信息 旨在引诱攻击者在不知情的情况下对其发起攻击 一旦攻击发生 蜜罐便能够捕获和分析攻击者的行为 从而
  • 盘点那些年我们一起玩过的网络安全工具

    大家好 我是IT共享者 这篇文章给大家盘点那些年 我们一起玩过的网络安全工具 一 反恶意代码软件 1 Malwarebytes 这是一个检测和删除恶意的软件 包括蠕虫 后门 流氓 拨号器 间谍软件等等 快如闪电的扫描速度 具有隔离功能 并让
  • 真的干不过,00后整顿职场已经给我卷麻了,想离职了...

    在程序员职场上 什么样的人最让人反感呢 是技术不好的人吗 并不是 技术不好的同事 我们可以帮他 是技术太强的人吗 也不是 技术很强的同事 可遇不可求 向他学习还来不及呢 真正让人反感的 是技术平平 却急于表现自己的人 每天加班到12点 在老
  • 适用于任何公司的网络安全架构

    1 第一等级 基础级 优势 可防范基本有针对性的攻击 使攻击者难以在网络上推进 将生产环境与企业环境进行基本隔离 劣势 默认的企业网络应被视为潜在受损 普通员工的工作站以及管理员的工作站可能受到潜在威胁 因为它们在生产网络中具有基本和管理员
  • SpiderFlow爬虫平台 前台RCE漏洞复现(CVE-2024-0195)

    0x01 产品简介 SpiderFlow是新一代爬虫平台 以图形化方式定义爬虫流程 以流程图的方式定义爬虫 不写代码即可完成爬虫 是一个高度灵活可配置的爬虫平台 0x02 漏洞概述 SpiderFlow爬虫平台src main java o
  • 掌握内网渗透之道,成为实战高手,看《内网渗透实战攻略》就够了

    文末送书 文末送书 今天推荐一本网络安全领域优质书籍 内网渗透实战攻略 文章目录 前言 如何阅读本书 目录 文末送书 前言 当今 网络系统面临着越来越严峻的安全挑战 在众多的安全挑战中 一种有组织 有特定目标 长时间持续的新型网络攻击日益猖
  • WEB前端常见受攻击方式及解决办法总结

    一个网址建立后 如果不注意安全问题 就很容易被人攻击 下面讨论一下集中漏洞情况和放置攻击的方法 一 SQL注入 所谓的SQL注入 就是通过把SQL命令插入到web表单提交或输入域名或页面请求的查询字符串 最终达到欺骗服务器执行恶意的SQL命
  • 用户数据中的幸存者偏差

    幸存者偏差 Survivorship bias 是一种常见的逻辑谬误 意思是没有考虑到筛选的过程 忽略了被筛选掉的关键信息 只看到经过筛选后而产生的结果 先讲个故事 二战时 无奈德国空防强大 盟军战机损毁严重 于是军方便找来科学家统计飞机受
  • 200道网络安全常见面试题合集(附答案解析+配套资料)

    有不少小伙伴面临跳槽或者找工作 本文总结了常见的安全岗位面试题 方便各位复习 祝各位事业顺利 财运亨通 在网络安全的道路上越走越远 所有的资料都整理成了PDF 面试题和答案将会持续更新 因为无论如何也不可能覆盖所有的面试题 php爆绝对路径
  • 【网络安全】Facebook代码执行实现命令执行、敏感信息泄露

    部分网站开设编码练习 若安全配置不当 则代码执行将升级为操作系统命令注入 导致敏感信息泄露 本文仅分享命令执行相关知识 不承担任何由于传播 利用本文所发布内容而造成的任何后果及法律责任 未经许可 不可转载 文章目录 信息泄露 扩大危害 信息
  • 网络安全基础知识面试题库

    1 基于路由器的攻击手段 1 1 源IP地址欺骗式攻击 入侵者从外部传输一个伪装成来自内部主机的数据包 数据包的IP是 内网的合法IP 对策 丢弃所有来自路由器外端口 却使用内部源地址的数据包 1 2 源路由攻击 入侵者让数据包循着一个不可
  • 数据库 | 面试官:一次到底插入多少条数据合适啊?.....面试连环炮

    数据库 面试官 一次到底插入多少条数据合适啊 面试连环炮 数据库插入操作的基础知识 插入数据是数据库操作中的基础 但是 我们程序员将面临随之而来的问题 如何快速有效地插入数据 并保持数据库 性能 当你向数据库中插入数据时 这些数据直接存储到
  • 程序员找工作难!拿到外包公司的 offer 我应该去么?

    引言 前一阵子有一个帖子引起了非常广泛的讨论 描述的就是一个公司的外包工作人员 加班的时候因为吃了公司给员工准备的零食 被公司的HR当场批评 这个帖子一发出来 让现在测试行业日益新增的外包公司备受关注 那么外包公司和非外包公司有什么样的不一
  • 史上最全Java面试八股文(带全部答案)2024年最新版

    今天要谈的主题是关于求职 求职是在每个技术人员的生涯中都要经历多次 对于我们大部分人而言 在进入自己心仪的公司之前少不了准备工作 有一份全面细致 面试题 将帮助我们减少许多麻烦 在跳槽季来临之前 特地做这个系列的文章 一方面帮助自己巩固下基
  • 最新整理Java面试八股文,大厂必备神器

    在此 我采访了数十名大厂的面试官和上百的的面试者 总结出了这一套Java面试八股文 这套八股文已经帮助了上百人拿到自己心仪的offer 我们先来看看这套八股文 Java基础面试八股文 操作系统中 heap 和 stack 的区别 什么是基于
  • 面试官:分库分表后如何生成全局ID?

    分库分表后就不能使用自增 ID 来作为表的主键了 因为数据库自增 ID 只适用于单机环境 但如果是分布式环境 是将数据库进行分库 分表或数据库分片等操作时 那么数据库自增 ID 就会生成重复 ID 从而导致业务查询上的问题 所以此时 可以使
  • 软件测试面试:还没有自动化测试项目经验,3个项目帮你走入软测职场!

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 2024最强Java面试八股文合集(持续更新)

    今天要谈的主题是关于求职 求职是在每个技术人员的生涯中都要经历多次 对于我们大部分人而言 在进入自己心仪的公司之前少不了准备工作 有一份全面细致 面试题 将帮助我们减少许多麻烦 在跳槽季来临之前 特地做这个系列的文章 一方面帮助自己巩固下基
  • 深入解析 YAML 配置文件:从语法到最佳实践

    一 认识YAML YAML YAML Ain t Markup Language 是一种人类可读的数据序列化语言 它的设计目标是使数据在不同编程语言之间交换和共享变得简单 YAML采用了一种简洁 直观的语法 以易于阅读和编写的方式表示数据结

随机推荐

  • Python--统计学检验

    1 导入相关库 import numpy as np import pandas as pd import matplotlib pyplot as plt from scipy import stats from scipy stats
  • python execute() 使用%s 拼接sql 避免sql注入攻击 好于.format

    1 execute 参数一 sql 语句 锁定当前查询结果行 cursor execute SELECT high low vol FROM table name WHERE symbol s FOR UPDATE symbol 2 for
  • 互联网程序员行话(黑话)合集

    一 招聘行话大全 能听懂证明你是历经磨难的老司机 刚开始投简历时 你总以为是这样的 其实大部分情况下是那样的 面试之后 HR让回去等消息 傻傻的等待 半个月以上没有回音 各种焦虑 明面上的意思就是实际意思的公司 貌似都是说的是别人的公司 下
  • 安全多方计算从入门到精通:MPC简介&JUGO平台

    简介 今天我们来介绍一下基于安全多方计算所设计出来的产品JUGO 从安全性角度来看 数据泄露 隐私安全问题严重 facebook的数据泄露事件闹得很大 原因就是facebook单方面将用户的个人数据提供给了第三方机构 这为个人数据的拥有权敲
  • Intel MediaSDK sample_decode 官方GPU解码流程学习(二) - 在双显卡机器上实现DirectX11 D3D11和OpenCL共享资源

    很久以前写过有关D3D11和OCL直接共享显存的代码 Intel MediaSDK sample decode 官方GPU解码流程学习 DirectX11 D3D11和OpenCL共享资源 这段代码一直运行的很好 被我用来做验证显卡驱动里的
  • [DB]数据库--lowdb

    DB 数据库 lowdb lowdb 基本应用 获取数据 数据变更 写入文件 lodash的使用 获取数据 lodash方法使用 数据变更 写入文件 lowdb lowdb 是一个基于文件存储的非关系型数据库 基于loadsh的轻量级数据库
  • Quaternion 学习与应用(转载)

    Quaternion 学习与应用 标签 四元数 unity3d quaternion 分类 Unity3D 今天准备学习和研究下unity3d的四元数 Quaternion 四元数在电脑图形学中用于表示物体的旋转 在unity中由x y z
  • 个人博客站点的搭建过程

    个人博客站点的搭建过程 技术选型 hexo vercel hexo介绍 官网 Hexo Hexo 是一个快速 简洁且高效的博客框架 Hexo 使用 Markdown 或其他渲染引擎 解析文章 在几秒内 即可利用靓丽的主题生成静态网页 ver
  • 【华为OD机试真题2023B卷 JAVA&JS】找最小数

    华为OD2023 B卷 机试题库全覆盖 刷题指南点这里 找最小数 知识点贪心 时间限制 1s 空间限制 32MB 限定语言 不限 题目描述 给一个正整数NUM1 计算出新正整数NUM2 NUM2为NUM1中移除N位数字后的结果 需要使得NU
  • Qt自定义控件的实践——电池电量控件

    一 介绍 上一篇我们绘制了一个自定义的slider控件 现在我们再绘制一个电池控件 它可调节电池电量 二 步骤 新建Battery类 battery h ifndef BATTERY H define BATTERY H 1 可设置电池电量
  • 操作系统---第三章内存管理---虚拟内存管理---应用题

    1 2009年统考真题 我在这里犯的错误是没有考虑到执行完缺页中断后还要优先访问快表 快表找不到才去访问内存 2在一个请求分页存储管理系统中 一个作业的页面走向为4 3 2 1 4 3 5 4 3 2 1 5 当分配给作业的物理块数分别为3
  • VMware安装和新建linux虚拟机

    目录 VMware虚拟机安装以及Linux系统安装及环境配置 1 安装前配置 2 VMware虚拟机的安装 VMware workstation 16 3 新建虚拟机 4 安装操作系统 5 配置远程管理 VMware虚拟机安装以及Linux
  • ant 通配符

    我们常用的匹配模式有ANT模式 比如acegi可以用PATTERN TYPE APACHE ANT来使用ANT匹配模式 那什么是ANT匹配模式呢 ANT通配符有三种 通配符 说明 匹配任何单字符 匹配0或者任意数量的字符 匹配0或者更多的目
  • Android性能优化(一)之启动加速35%

    一 前言 随着项目版本的迭代 App的性能问题会逐渐暴露出来 而好的用户体验与性能表现紧密相关 从本篇文章开始 我将开启一个Android应用性能优化的专题 从理论到实战 从入门到深挖 手把手将性能优化实践到项目中 欢迎持续关注 那么第一篇
  • OpenGL(十)——基础光照

    目录 一 前言 二 环境光照 三 漫反射光照 3 1 法向量 3 2顶点着色器 3 3 VAO属性解释 3 4 片段着色器 四 镜面光照 4 1 片段着色器 一 前言 现实世界光照十分复杂 冯氏光照模型是对现实世界光照的抽象 主要由3部分组
  • CSAPP-数据表示与运算实验

    目录 一 实验目的 二 实验要求及注意事项 三 实验原理与内容 1 位操作 2 补码运算 3 浮点数操作 四 实验设备与软件环境 五 实验过程与结果 1 操作符及运算概览 1 位运算和逻辑运算 2 补码运算 3 浮点数 2 功能实现与结论
  • DB2的日期时间类型以及转换问题

    一 首先说一下日期时间类型的简介 日期时间型数据类型包括 DATE TIME 和 TIMESTAMP 日期时间值可在某些算术和字符串操作中使用 而且兼容某些字符串 但它们既不是字符串 也不是数字 DATE DATE 是一个由三部分组成的值
  • 【第47篇】BoT-SORT:强大的关联多行人跟踪

    摘要 论文连接 https arxiv org pdf 2206 14651 pdf 多对象跟踪 MOT 的目标是检测和跟踪场景中的所有对象 同时为每个对象保留一个唯一标识符 在本文中 我们提出了一种新的鲁棒的最先进的跟踪器 它可以结合运动
  • 第三十三章续:用1 x 2的多米诺骨牌填满M x N的矩形有多少种方案

    题目描述 用1 x 2的多米诺骨牌填满M x N的矩形有多少种方案 M lt 5 N lt 2 31 输出答案mod p的结果 矩阵乘法 include
  • 渗透测试岗面试题汇总

    有些是网上整理的渗透测试岗 试问题 有些 HW 试的题 已经收集好了 提供给 家 现在就是毕业季节 希望各位都能找到好 作 还有一部分是根据回忆总结的 部分问题可能描述的有些问题 安全的体系很大 这些只是冰山一角而已 感兴趣的同学可以点击我