2024常见渗透测试面试题

1、判断出网站的 CMS 对渗透有什么意义?

查找网上已曝光的程序漏洞。如果开源,还能下载对应的源码进行代码审计。

2、Nmap 主要功能有那些,扫描的几种方式、绕过 ping 扫描、漏洞检测等

(1)四大功能:分别为主机发现(参数-sn)、端口扫描(-sS -sU)、版本侦测(–sV)、

OS 侦测(-O)

(2)扫描方式有:

tcp connect()

这种方式最简单。直接与被扫描的端口建立tcp链接,如果成功,则说明端口开放,如果不成功则说明端口关闭的。这种扫描的特点是与被扫描端口建立完成的tcp链接,完整的tcp三次握手。优点主要是不需要root权限即可扫描端口。因为connect可以在用户态直接调用

TCP SYN scanning

这种扫描方式又被称为tcp半开放扫描。顾名思义,这种扫描不需要建立完整的tcp连接,即可扫描端口的状态。发送tcp syn数据包,这个也是tcp握手的第一个包。如果端口开放,则会返回 tcp syn+ack数据包。如果端口关闭,则返回 tcp rst数据包。这样我们就不用进行tcp 握手的第三步,也可以探测端口的状态。这种扫描需要构建raw socket。所以需要root权限

TCP FIN scanning

有些时候防火墙绘过滤tcp syn数据包,有些时候会记录syn数据包并检测时候有nmap扫描。这时候可以使用TCP FIN scanning。这种方式很简单。发送tcp FIN数据包到待测端口。如果返回RST数据包,则说明该端口关闭,如果无返回则说明该端口开放。这时tcp协议的一个BUG,所以这种扫描方式不一定百分之百可靠(例如windows),但是这种扫描方式适合大部分 *NIX 系统。

TCP NULL, FIN, and Xmas scans

在RFC 793的第65页写到,如果目的端口的是关闭的,并且接受到的tcp数据包如果可能会导致系统错误,则返回RST。如果开放的端口接受到诸如SYN RST ACK,则丢弃或者不做任何处理。根据此RFC描述,我们可以发送不包含SYN RST或者ACK标志的数据包,如果返回RST则说明端口是关闭状态,如果什么都没有返回则说明端口是开放状态。

Null scan

tcp flag headers 全为0

FIN scan

只设置tcp FIN标志

xmas scan

同时设置FIN PSH URG标志位。

上面这三种扫描的结果都是一致的,如果接受到到RST,则说明端口是关闭的。如果无响应,则端口可能是开放或者filteted状态。如果返回icmp unreachable error(type 3, code 0, 1, 2, 3, 9, 10, 13),则说明端口一定是filtered的。

TCP ACK scan

这种扫描只设置tcp ack标志位。这种扫描一般来探测防火墙是否过滤被扫描的端口。如果扫描的端口未被防火墙保护,那么无论是开放或者是关闭,都会返回RST。nmap将该端口标记为未被封锁的(unfiltered),但是不能确定该端口是开放或者关闭状态。如果无响应,或者返货icmp error,则该端口一定被防火墙封锁了

TCP Window scan

tcp窗口扫描,如果接收到RST,则说明端口封锁了。在某些操作系统,开放的端口会返回一个正数的tcp窗口值,如果端口关闭,则返回tcp窗口值为0或者负数。但是这种扫描不是很靠谱

TCP Maimon scan

这种扫描为发送同时设置FIN/ACK的数据包。如果返回RST,则说明端口是开放的,如果无响应,则是关闭状态的。

IP protocol scan

这种是专门扫描ip协议的。扫描类似于udp扫描,如果IP协议号不存在,返回 icmp错误。具体没用过,不太好写

UDP ICMP port unreachable scanning

如果udp端口开放,则无响应。如果udp端口关闭,则会返回icmp unreachable error错误。这种扫描需要root权限,因为需要构建raw socket。

UDP connect扫描

这种直接一个一个建立udp连接,如果能建立,则说明端口开放,不能建立则端口关闭。

(3)绕过 ping 扫描参数为:nmap -Pn XXX.XXX.XXX.XXX

(4)漏洞检测可直接 nmap 目标 --script=auth,vuln

3、mysql 注入点,用工具对目标站直接写入一句话,需要哪些条件?

Root权限、网站的绝对路径、需要数据库开启secure_file_priv相当于secure_file_priv的值为空,不为空不允许写入webshell(默认不开启,需要修改my.ini配置文件)

4、为何一个 mysql 数据库的站,只有一个 80 端口开放?

  1. 更改了数据库端口,没有扫描出来
  2. 站库分离
  3. 3306端口不对外开放

5、sql 注入写文件都有哪些函数?

union select “<?php @eval($\_POST\['123'\]);?>”,2 into outfile

"C:\\phpStudy\\WWW\\123.php"±-+&Submit=Submit

6、目前已知哪些版本的中间件有解析漏洞,具体举例

IIS6.0

文件夹目录解析 /xx.asp/xx.jpg "xx.asp"是文件夹名,这样只要在 xx.asp 目录下面的任意文件都会当脚

本解析。

xx.asp;.jpg 通过上传功能传到网站目录,直接会当作 asp 脚本执行。

IIS 7.0****、****IIS7.5

默认 Fast-CGI 开启,直接在 url 中图片地址后面输入/1.php,会把正常图片当成 php 解析

Nginx

版本小于等于 0.8.37,利用方法和 IIS 7.0/7.5 一样,Fast-CGI 关闭情况下也可利用。

空字节代码 xxx.jpg.php

Apache

上传的文件命名为:test.php.x1.x2.x3,Apache 是从右往左判断后缀

lighttpd

xx.jpg/xx.php 与上面一样

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

xss是跨站脚本攻击,用户提交的数据中可以构造代码来执行,从而实现窃取用户信息等攻击。修复方式:对字符实体进行转义、使用HTTP Only来禁止javaScript读取Cookie值、输入时校验、输出时采用html实体编码。

CSRF是跨站请求伪造攻击,XSS是实现CSRF的诸多手段中的一种,是由于没有在关键操作执行时进行是否由用户自愿发起的确认。修复方式:筛选出需要防范CSRF的页面然后嵌入Token、再次输入密码、检验Referer

XXE和XML外部实体注入攻击,XML中可以通过调用实体来请求本地或者远程内容,和远程文件保护类似,会引发相关安全问题,例如敏感文件读取。修复方式:XML解析库在调用时严格禁止对外部实体的解析

CSRF与XSS区别:

方向不一样

xss主要通过劫持用户信息,主动地去通过劫持的用户信息,去进行攻击

csrf主要通过伪造请求,将自己的请求伪装成正常请求,通过用户去访问正常网站

对象不一样

xss主要攻击客户端

csrf主要通过伪装去访问服务端

方法不一样

xss不需要登录,直接在页面进行语句构造进行攻击或者脚本攻击

csrf需要有被伪装攻击用户的登录信息

8、本地包含与远程包含的区别?

本地包含只需要找个上传点,把图片木马上传到对方服务器,通过本地包含漏洞直接包含木马脚本木马就可以运行webshell,远程包含需要服务器php关闭魔术符号与开启远程包含功能才行。

9、渗透过程中如何找到 Waf、CDN 真实 IP

  1. ping一个不存在的二级域名
  2. 查看IP与域名绑定的历史记录,可能会存在使用CDN钱的记录
  3. 观看IP变化
  4. 查询子域名
  5. 利用SSL证书寻找真实原始IP
  6. 网站漏洞查找
  7. 网站邮件订阅查找
  8. 通过国外服务器ping对方网站,国内很多CDN厂商在国外没做CDNjaisu
  9. 用Zmap扫全网、DDOS把CDN流量打光

10、说一次你映像比较深的渗透测试经历

在Wooyun或其他网站上找个有技术含量的案例背下来

网络安全学习路线&学习资源

网络安全的知识多而杂,怎么科学合理安排?

下面给大家总结了一套适用于网安零基础的学习路线,应届生和转行人员都适用,学完保底6k!就算你底子差,如果能趁着网安良好的发展势头不断学习,日后跳槽大厂、拿到百万年薪也不是不可能!

初级网工

1、网络安全理论知识(2天)

①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(一周)

①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(一周)

①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(一周)

①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)

①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)

①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

恭喜你,如果学到这里,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web 渗透、安全服务、安全分析等岗位;如果等保模块学的好,还可以从事等保工程师。薪资区间6k-15k

到此为止,大概1个月的时间。你已经成为了一名“脚本小子”。那么你还想往下探索吗?

“脚本小子”成长进阶资源领取

7、脚本编程(初级/中级/高级)

在网络安全领域。是否具备编程能力是“脚本小子”和真正黑客的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力.

零基础入门,建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习; 搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP, IDE强烈推荐Sublime; ·Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,不要看完; ·用Python编写漏洞的exp,然后写一个简单的网络爬虫; ·PHP基本语法学习并书写一个简单的博客系统; 熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选); ·了解Bootstrap的布局或者CSS。

8、超级网工

这部分内容对零基础的同学来说还比较遥远,就不展开细说了,贴一个大概的路线。感兴趣的童鞋可以研究一下,不懂得地方可以【点这里】加我耗油,跟我学习交流一下。

网络安全工程师企业级学习路线

如图片过大被平台压缩导致看不清的话,可以【点这里】加我耗油发给你,大家也可以一起学习交流一下。

一些我自己买的、其他平台白嫖不到的视频教程:

需要的话可以扫描下方卡片加我耗油发给你(都是无偿分享的),大家也可以一起学习交流一下。

结语

网络安全产业就像一个江湖,各色人等聚集。相对于欧美国家基础扎实(懂加密、会防护、能挖洞、擅工程)的众多名门正派,我国的人才更多的属于旁门左道(很多白帽子可能会不服气),因此在未来的人才培养和建设上,需要调整结构,鼓励更多的人去做“正向”的、结合“业务”与“数据”、“自动化”的“体系、建设”,才能解人才之渴,真正的为社会全面互联网化提供安全保障。

特别声明:

此教程为纯技术分享!本书的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本书的目的在于最大限度地唤醒大家对网络安全的重视,并采取相应的安全措施,从而减少由网络安全而带来的经济损失!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值