快来!渗透测试岗位面试题(渗透思路)已上新!

当你去面试渗透测试岗位的时候,以下这些问题都是HR最容易问的。

那么应该怎样回答HR的这些问题呢?掌握面试中的这些题目你的右脚就已经踏进公司大门了。

问:拿到一个待检测的站,你觉得应该先做什么?

答:收集信息
whois、网站源IP、旁站、C段网站、服务器系统版本、容器版本、程序版本、数据库类型、二级域名、防火墙、维护者信息另说…

问:mysql的网站注入,5.0以上和5.0以下有什么区别?
答:5.0以下没有information_schema这个系统表,无法列表名等,只能暴力跑表名。
5.0以下是多用户单操作,5.0以上是多用户多操做。

问:在渗透过程中,收集目标站注册人邮箱对我们有什么价值?
答:丢社工库里看看有没有泄露密码,然后尝试用泄露的密码进行登录后台。
用邮箱做关键词进行丢进搜索引擎。
利用搜索到的关联信息找出其他邮进而得到常用社交账号。
社工找出社交账号,里面或许会找出管理员设置密码的习惯 。
利用已有信息生成专用字典。
观察管理员常逛哪些非大众性网站,拿下它,你会得到更多好东西。

问:判断出网站的CMS对渗透有什么意义?
答:查找网上已曝光的程序漏洞。
如果开源,还能下载相对应的源码进行代码审计。

问:一个成熟并且相对安全的CMS,渗透时扫目录的意义?
答:敏感文件、二级目录扫描
站长的误操作比如:网站备份的压缩文件、说明.txt、二级目录可能存放着其他站点

问:常见的网站服务器容器。
答:IIS、Apache、nginx、Lighttpd、Tomcat

问:mysql注入点,用工具对目标站直接写入一句话,需要哪些条件?
答:root权限以及网站的绝对路径。

问:目前已知哪些版本的容器有解析漏洞,具体举例。
答:IIS 6.0
/xx.asp/xx.jpg "xx.asp"是文件夹名
IIS 7.0/7.5
默认Fast-CGI开启,直接在url中图片地址后面输入/1.php,会把正常图片当成php解析
Nginx
版本小于等于0.8.37,利用方法和IIS 7.0/7.5一样,Fast-CGI关闭情况下也可利用。
空字节代码 xxx.jpg%00.php
Apache
上传的文件命名为:test.php.x1.x2.x3,Apache是从右往左判断后缀
lighttpd

问:如何手工快速判断目标站是windows还是linux服务器?
答:linux大小写敏感,windows大小写不敏感。

10.为何一个mysql数据库的站,只有一个80端口开放?
更改了端口,没有扫描出来。
站库分离。
3306端口不对外开放

问:3389无法连接的几种情况。
答:没开放3389 端口
端口被修改
防护拦截
处于内网(需进行端口转发)

问:如何突破注入时字符被转义?
答:宽字符注入
hex编码绕过

问:在某后台新闻编辑界面看到编辑器,应该先做什么?
答:查看编辑器的名称版本,然后搜索公开的漏洞。

问:拿到一个webshell发现网站根目录下有.htaccess文件,我们能做什么?
答:能做的事情很多,用隐藏网马来举例子:
插入
<FilesMatch “xxx.jpg”> SetHandler application/x-httpd-php
.jpg文件会被解析成.php文件。
具体其他的事情,不好详说,建议大家自己去搜索语句来玩玩。

问:注入漏洞只能查账号密码?
答:只要权限广,拖库脱到老。

问:安全狗会追踪变量,从而发现出是一句话木马吗?
答:是根据特征码,所以很好绕过了,只要思路宽,绕狗绕到欢,但这应该不会是一成不变的。

问:access 扫出后缀为asp的数据库文件,访问乱码。如何实现到本地利用。
答:迅雷下载,直接改后缀为.mdb。

问:提权时选择可读写目录,为何尽量不用带空格的目录?
答:因为exp执行多半需要空格界定参数

问:某服务器有站点A,B 为何在A的后台添加test用户,访问B的后台。发现也添加上了test用户?
答:同数据库。

问:注入时可以不使用and 或or 或xor,直接order by 开始注入吗?
答:and/or/xor,前面的1=1、1=2步骤只是为了判断是否为注入点,如果已经确定是注入点那就可以省那步骤去。

问:某个防注入系统,在注入时会提示:
答:系统检测到你有非法注入的行为。 已记录您的ip xx.xx.xx.xx 时间:2016:01-23 提交页面:test.asp?id=15 提交内容:and 1=1
如何利用这个防注入系统拿shell?
在URL里面直接提交一句话,这样网站就把你的一句话也记录进数据库文件了 这个时候可以尝试寻找网站的配置文件

问:上传大马后访问乱码时,有哪些解决办法?
答:浏览器中改编码。

问:审查上传点的元素有什么意义?
答:有些站点的上传文件类型的限制是在前端实现的,这时只要增加上传类型就能突破限制了。

问:目标站禁止注册用户,找回密码处随便输入用户名提示:“此用户不存在”,你觉得这里怎样利用?
答:先爆破用户名,再利用被爆破出来的用户名爆破密码。
其实有些站点,在登陆处也会这样提示
所有和数据库有交互的地方都有可能有注入。

问:目标站发现某txt的下载地址为Client Validation,你有什么思路?
答这就是传说中的下载漏洞!在file=后面尝试输入index.php下载他的首页文件,然后在首页文件里继续查找其他网站的配置文件,可以找出网站的数据库密码和数据库的地址。

问:甲给你一个目标站,并且告诉你根目录下存在/abc/目录,并且此目录下存在编辑器和admin目录。请问你的想法是?
答:直接在网站二级目录/abc/下扫描敏感文件及目录。

问:在有shell的情况下,如何使用xss实现对目标站的长久控制?
答:后台登录处加一段记录登录账号密码的js,并且判断是否登录成功,如果登录成功,就把账号密码记录到一个生僻的路径的文件中或者直接发到自己的网站文件中。(此方法适合有价值并且需要深入控制权限的网络)。
在登录后才可以访问的文件中插入XSS脚本。

问:后台修改管理员密码处,原密码显示为。你觉得该怎样实现读出这个用户的密码?
答:审查元素 把密码处的password属性改成text就明文显示了

问:目标站无防护,上传图片可以正常访问,上传脚本格式访问则403.什么原因?
答:原因很多,有可能web服务器配置把上传目录写死了不执行相应脚本,尝试改后缀名绕过

问:审查元素得知网站所使用的防护软件,你觉得怎样做到的?
答:在敏感操作被拦截,通过界面信息无法具体判断是什么防护的时候,F12看HTML体部 比如护卫神就可以在名称那看到内容。

问:在win2003服务器中建立一个 .zhongzi文件夹用意何为?
答:隐藏文件夹,为了不让管理员发现你传上去的工具。

问:sql注入有以下两个测试选项,选一个并且阐述不选另一个的理由:

答:A. demo.jsp?id=2+1

B. demo.jsp?id=2-1
选B,在 URL 编码中 + 代表空格,可能会造成混淆

问:以下链接存在 sql 注入漏洞,对于这个变形注入,你有什么思路?

答:demo.do?DATA=AjAxNg==
DATA有可能经过了 base64 编码再传入服务器,所以我们也要对参数进行 base64 编码才能正确完成测试

问:发现 demo.jsp?uid=110 注入点,你有哪几种思路获取 webshell,哪种是优选?

答:有写入权限的,构造联合查询语句使用using INTO OUTFILE,可以将查询的输出重定向到系统的文件中,这样去写入 WebShell
使用 sqlmap –os-shell 原理和上面一种相同,来直接获得一个 Shell,这样效率更高
通过构造联合查询语句得到网站管理员的账户和密码,然后扫后台登录后台,再在后台通过改包上传等方法上传 Shell

问:CSRF 和 XSS 和 XXE 有什么区别,以及修复方式?

答:XSS是跨站脚本攻击,用户提交的数据中可以构造代码来执行,从而实现窃取用户信息等攻击。修复方式:对字符实体进行转义、使用HTTP Only来禁止JavaScript读取Cookie值、输入时校验、浏览器与Web应用端采用相同的字符编码。

CSRF是跨站请求伪造攻击,XSS是实现CSRF的诸多手段中的一种,是由于没有在关键操作执行时进行是否由用户自愿发起的确认。修复方式:筛选出需要防范CSRF的页面然后嵌入Token、再次输入密码、检验Referer
XXE是XML外部实体注入攻击,XML中可以通过调用实体来请求本地或者远程内容,和远程文件保护类似,会引发相关安全问题,例如敏感文件读取。修复方式:XML解析库在调用时严格禁止对外部实体的解析。

问:CSRF、SSRF和重放攻击有什么区别?

答:CSRF是跨站请求伪造攻击,由客户端发起
SSRF是服务器端请求伪造,由服务器发起
重放攻击是将截获的数据包进行重放,达到身份认证等目的

问:说出至少三种业务逻辑漏洞,以及修复方式?

答:密码找回漏洞中存在密码允许暴力破解、存在通用型找回凭证、可以跳过验证步骤、找回凭证可以拦包获取等方式来通过厂商提供的密码找回功能来得到密码
身份认证漏洞中最常见的是会话固定攻击和 Cookie 仿冒,只要得到 Session 或 Cookie 即可伪造用户身份
验证码漏洞中存在验证码允许暴力破解、验证码可以通过 Javascript 或者改包的方法来进行绕过

问:圈出下面会话中可能存在问题的项,并标注可能会存在的问题?
答:get /ecskins/demo.jsp?uid=2016031900&keyword=”hello world” HTTP/1.1

Host:.com:82

User-Agent:Mozilla/5.0 Firefox/40Accept:text/css,/;q=0.1

Accept-Language:zh-CN;zh;q=0.8;en-US;q=0.5,en;q=0.3

Referer:http://.com/eciop/orderForCC/cgtListForCC.htm?zone=11370601&v=145902

Cookie:myguid1234567890=1349db5fe50c372c3d995709f54c273d;

uniqueserid=session_OGRMIFIYJHAH5_HZRQOZAMHJ;st_uid=N90PLYHLZGJXI-NX01VPUF46W;status=TrueConnection:keep-alive

三、网络安全学习路线

先放上路线图

第一阶段:基础操作入门

入门的第一步是学习一些当下主流的安全工具课程并配套基础原理的书籍,一般来说这个过程在1个月左右比较合适。在这个部分我介绍的课程和书籍都属于难度非常低的,就算是完全零基础的小白只要认真学也是能够学会的

课程我推荐下面这套Web安全入门基础课程,难度不大而且完全免费。这套课程至今已经有19万的学习人次,好评度99%。一共包含了40节课,课程内容主要包含了burp、awvs、cs、msf等当下主流工具的使用,而且每节课程都配备了练习靶场。听完课程后再去靶场进行练习,靶场当中有任何不懂的问题也可以在学习群里请教前辈,这样能够大大提升你的学习效率

在学习基础入门课程的同时,推荐同时阅读相关的书籍补充理论知识,这里比较推荐以下几本书:

  • 《白帽子讲Web安全》
  • 《Web安全深度剖析》
  • 《Web安全攻防 渗透测试实战指南》

第二阶段:学习基础知识

在这个阶段,你已经对网络安全有了基本的了解。如果你认真看完了上面推荐的书籍和课程,相信你已经在理论上明白了上面是sql注入,什么是xss攻击,对burp、msf、cs等安全工具也掌握了基础操作。这个时候最重要的就是开始打地基!

所谓的“打地基”其实就是系统化的学习计算机基础知识。而想要学习好网络安全,首先要具备5个基础知识模块:

学习这些基础知识有什么用呢?

计算机各领域的知识水平决定你渗透水平的上限。

  • 比如:你编程水平高,那你在代码审计的时候就会比别人强,写出的漏洞利用工具就会比别人的好用;
  • 比如:你数据库知识水平高,那你在进行SQL注入攻击的时候,你就可以写出更多更好的SQL注入语句,能绕过别人绕不过的WAF;
  • 比如:你网络水平高,那你在内网渗透的时候就可以比别人更容易了解目标的网络架构,拿到一张网络拓扑就能自己在哪个部位,拿到以一个路由器的配置文件,就知道人家做了哪些路由;
  • 再比如你操作系统玩的好,你提权就更加强,你的信息收集效率就会更加高,你就可以高效筛选出想要得到的信息

这些基础该学到什么程度呢?

计算机各领域的知识水平决定你渗透水平的上限,但是零基础并不是要把上面的全部都学的很好再去搞渗透,那不仅会劝退大部分人,而且像我前面说的深度学习很容易学的囫囵吞枣,最后反而竹篮打水一场空

作为初学者,可以先学习基础。比如你先学一个编程语言的基础,用PHP做例子,你起码要懂if else这些、连接数据库;比如学数据库,用MySQL做例子,那至少也是要会增删改查、子查询这几个操作;网络的话比较难,也是很抽象的,你做外网的渗透,至少要懂基础的http协议,知道端口是什么,知道网站是怎么架设起来的;操作系统的基础相对比较好学,主要是各种命令的作用,各种软件的安装和使用

学习书籍和资源推荐:

《HTTP权威指南》

《Python核心编程》

《PHP和MySQL Web开发》

《JavaScript高级程序设计》

Web安全学习笔记 - Web安全学习笔记 1.0 文档

靶场:

Damn Vulnerable Web Application
Audi-1/sqli-labs
BUUCTF
bugku
网络信息安全攻防平台

第三阶段:实战操作

1.挖SRC

挖SRC的目的主要是讲技能落在实处,学习网络安全最大的幻觉就是觉得自己什么都懂了,但是到了真的挖漏洞的时候却一筹莫展,而SRC是一个非常好的技能应用机会

SRC平台:

SRC平台合集

2.从技术分享帖(漏洞挖掘类型)学习

观看学习近十年所有0day挖掘的帖,然后搭建环境,去复现漏洞,去思考学习笔者的挖洞思维,培养自己的渗透思维!

安全大佬博客:

Sec-News
李劼杰的博客
Yaseng 博客
离别歌
Lcy’s Blog
hackfun
信安之路
蓝骑兵

书籍推荐:

  • 《WEB之困-现代WEB应用安全指南》
  • 《内网安全攻防渗透测试安全指南》
  • 《Metasploit渗透测试魔鬼训练营》
  • 《SQL注入攻击与防御》
  • 《黑客攻防技术宝典-Web实战篇(第2版)》

到这一步,再加上之后对挖掘漏洞的技术多加练习与积累实战经验,基本就可以达到安全工程师的级别

最后

为了帮助大家更好的学习网络安全,小编给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂,所有资料共282G,朋友们如果有需要全套网络安全入门+进阶学习资源包,可以点击免费领取(如遇扫码问题,可以在评论区留言领取哦)~

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
————————————————
👉优快云大礼包🎁:全网最全《网络安全入门&进阶学习资源包》免费分享(安全链接,放心点击)👈

Real ESRGAN是一种用于图像超分辨率增强的方法,它可以通过训练自己的数据集来实现个性化的图像增强效果。下面是训练Real ESRGAN的步骤: 1. 准备数据集:首先,您需要准备一个包含低分辨率图像和对应高分辨率图像的数据集。这些图像对应的分辨率应该是相同的,并且应该有足够的多样性和代表性。 2. 数据预处理:在训练之前,您需要对数据进行预处理。这包括将图像调整为相同的大小,并将它们转换为模型可以处理的格式,例如JPEG或PNG。 3. 构建模型:接下来,您需要构建Real ESRGAN模型。这可以通过使用深度学习框架(如TensorFlow或PyTorch)来实现。您可以使用预训练的ESRGAN模型作为起点,并根据您的数据集进行微调,或者从头开始构建一个新的模型。 4. 定义损失函数:在训练过程中,您需要定义一个损失函数来衡量生成图像与真实高分辨率图像之间的差异。常用的损失函数包括均方误差(MSE)和感知损失(Perceptual Loss)。 5. 训练模型:使用准备好的数据集和定义好的损失函数,您可以开始训练Real ESRGAN模型。训练过程可能需要一段时间,具体时间取决于数据集的大小和计算资源的可用性。 6. 评估和调优:在训练完成后,您可以使用一些评估指标(如PSNR和SSIM)来评估模型的性能。如果需要进一步改进模型的效果,您可以尝试调整超参数或增加训练数据。 7. 应用模型:一旦您的Real ESRGAN模型训练完成并且性能满足您的要求,您可以将其应用于新的图像数据,以实现高质量的图像超分辨率增强效果。 下面是一个示例代码,展示了如何使用Real ESRGAN训练自己的数据集: ```python # 导入所需的库 import tensorflow as tf from tensorflow.keras.models import Model from tensorflow.keras.layers import Input, Conv2D, LeakyReLU, Add from tensorflow.keras.optimizers import Adam # 构建Real ESRGAN模型 def build_real_esrgan_model(): # 定义模型的输入 input_image = Input(shape=(None, None, 3)) # 添加ESRGAN模型的各个层 # ... # 定义模型的输出 output_image = # ... # 构建模型 model = Model(inputs=input_image, outputs=output_image) return model # 定义损失函数 def perceptual_loss(y_true, y_pred): # ... pass # 准备数据集 # ... # 构建并编译Real ESRGAN模型 model = build_real_esrgan_model() model.compile(optimizer=Adam(), loss=perceptual_loss) # 训练模型 model.fit(dataset, epochs=10, batch_size=16) # 评估模型 # ... # 应用模型 # ... ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值