位置:首页 > 网络安全
某厂2016实习招聘安全技术试题答案及解析
* 本文原创作者:ymmy
0x00 前言
鉴于曾经做过某厂招聘-安全技术笔试题目,故留此一记,以作怀念。
此外,网上也有公布的相关的答案,但是其中有些题目稍有错误或者解释不全,当然我也有可能解释有误,希望大家多多在评论区中指出,所以趁机写上一记。
0x01 开始
2016年4月2日晚上7:00到9:00,某厂2016实习招聘-安全技术的笔试题确实考到很多基础知识。该笔试题有两部分。第一部分是30道不定项选择题、10道简答题和5道判断题,题量是45,限时80分钟。第二部分是2道分析题,限时40分钟。有下面统一给出答案和为每一题做出解释。
0x02 不定项选择题-30
1 应用程序开发过程中,下面那些开发习惯可能导致安全漏洞?()
A 在程序代码中打印日志输出敏感信息方便调式
B 在使用数组前判断是否越界
C 在生成随机数前使用当前时间设置随机数种子
D 设置配置文件权限为rw-rw-rw-
答案:AD
解释:
A 为日志包含敏感信息,容易泄露账号密码接口数据等信息,可能产生安全漏洞。
B 为数组大小问题,数组不越界,可防止溢出安全漏洞。因此是安全的。
C 用当前时间来作为随机数种子的话,随着时间的不同,生成的随机数也会不同。因此是安全的。
D 为配置文件的权限问题,rw为可以读取可以写入。第一个rw-为文件所属用户、第二个rw-为用户所在组、第三个rw-为其它用户的读写。可以导致非法写入和越权访问,可能产生安全漏洞。
2 以下哪些工具提供拦截和修改HTTP数据包的功能?()
A Burpsuite
B Hackbar
C Fiddler
D Nmap
答案:AC
解释:
A Burpsuite是可以通过设置浏览器代理进行网络渗透的,用于攻击Web应用的集成平台。可以进行拦截和修改HTTP数据包。
B Hackbar 是用来进行sql注入、测试XSS和加解密字符串的。可以用来快速构建一个HTTP请求(GET/POST)等。但是不能拦截和修改HTTP数据包。
C Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯。可以进行拦截和修改HTTP数据包。
D Nmap是一款网络端口扫描工具,可以扫描各种端口及其服务甚至是漏洞检测。但是不能不能拦截和修改HTTP数据包。
3 坏人通过XSS漏洞获取到QQ用户的身份后,可以进行一下操作?()
A 偷取Q 币
B 控制用户摄像头
C 劫持微信用户
D 进入QQ空间
答案:D
解释:
XSS漏洞是获取用户cookie的,即是获得用户cookie等敏感信息。
A 偷取Q币。需要用户进行确认或者输入密码,具有很强的交互性。因此无法进行。
B 控制用户用户摄像头。因为开启摄像头,需要用户手动确认。因此无法进行。
C 劫持微信用户。因为微信登录会验证手机信息甚至短信验证,并且只能同时在一个设备上登录一个微信账号。因此无法进行。
D 进入QQ空间。 因为登录QQ空间是不需要用户交互操作的,并且使用cookie获得用户身份后,就好像正常用户一样可以查看QQ空间,QQ资料等。
4 以下哪些工具可以抓取HTTP数据包?()
A Burpsuite
B Wireshark
C Fiddler
D Nmap
答案:ABC
解释:
A Burpsuite是可以通过设置浏览器代理进行网络渗透的,用于攻击Web应用的集成平台。因此是可以HTTP数据包。
B Wireshark是监听网络接口数据的,可以设置监听某个网卡来监听各种网络数据包。因此是可以抓取HTTP数据包。
C Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯。因此是可以抓取HTTP数据包。
D Nmap是一款网络端口扫描工具,可以扫描各种端口及其服务甚至是漏洞检测。但是不能抓取HTTP数据包。
5 以下哪些说法是正确的?()
A IOS系统从IOS6开始引入kernelASLR安全措施
B 主流的Iphone手机内置了AES及RSA硬件加速解密引擎
C 安卓系统采用了安全引导链(secureboot chain ),而IOS系统则未采用
D Android 4.1 系统默认启用了内存ASLR
答案:ABD
解释:
A IOS系统从IOS6开始引入kernelASLR安全措施。情况属实。因此是正确的。
B 主流的Iphone手机内置了AES及RSA硬件加速解密引擎。情况属实。因此是正确的。
C 安卓系统采用了安全引导链(secureboot chain ),而IOS系统则未采用。情况不属实,原因是IOS系统也采用了安全引导链。因此是不正确的。
D Android 4.1 系统默认启用了内存ASLR。情况属实。因此是正确的。
6 以下哪些是常见的PHP ’ 一句话木马“ ? ()
A
?php assert ($_POST(value));?>
B
%execute(request("value"))%>
C
?php @eval ($_POST(value)):?>
D
%if(request.getParameter("!")!=null)(newjavio.FileOutputStream(application.getRealPath("\\") + request.getParmeter("!"))).write (request.getParameter("t").getByte())):%>
答案:ABCD
解释:
A assert用来判断一个表达式是否成立,可以远程连接。可为PHP一句话木马。
B execute 用来执行表达式,可以执行某些操作。可为asp一句话木马。
C eval 实现php对表达式的计算和执行,可以用来执行某些操作。可为PHP一句话木马。
D 通过判断执行文件输出写入,故为一句话木马。
7 以下哪个说法是正确的?()
A xcodeghost 是一种可以直接远程控制手机控制权的攻击方式
B wormhole是一种可以直接远程控制手机控制权的攻击方式
C ” 心脏滴血“ 是一种可以直接远程控制手机控制权的攻击方式
D shellshock是一种可以直接远程控制手机控制权的攻击方式
答案:A
解释:
A 通过Xcode从源头注入病毒XcodeGhost,是一种针对苹果应用开发工具Xcode的病毒。于2015年9月被发现。它的初始传播途径主要是通过非官方下载的Xcode 传播,通过CoreService 库文件进行感染。当应用开发者使用带毒的Xcode工作时,编译出的App 都将被注入病毒代码,从而产生众多带毒APP。用户在iOS设备上安装了被感染的APP后,设备在接入互联网时APP会回连恶意URL地址init.icloud-analysis.com,并向该URL上传敏感信息(如设备型号、iOS 版本)。回连的C}; echo Shellshock' bash -c "exit"如果有输出,就说明存在该漏洞。只要是能通过某种手段为bash传递环境变量的程序都受此影响。当然最典型的的就是bash写的CGI程序了,客户端通过在请求字符串里加入构造的值,就可以轻松攻击运行CGI的服务器。
因此shellshockbu不是一种可以直接远程控制手机控制权的攻击方式,而是可以直接远程控制服务器控制权的攻击方式。
8 在同一个bash 下依次执行
root@kali:~/Desktop# whoami
root
root@kali:~/Desktop# function whoami() { echo 1;}
root@kali:~/Desktop# whoami
最后一次执行的whoami 的结果是什么?()
A root
B 1
C echo 1
D echo 1;
答案:B
解释:第一次执行whoami 是正常显示 root.。functionwhoami() { echo 1;} 通过定义函数whoami , 使得whoami 是一个函数,而初始化值为echo 1 ,而echo 1 的执行结果是1。也就是说,通过调用函数whoami 并且初始化(执行echo函数),所以输出结果为1。
9 以下哪个攻击可用来运行ddos攻击?()
A 菜刀
B WSI
C Dosend
D Chkrootkit
答案:C
解释:
A 中国菜刀是一款专业的网站管理软件。
B WSI是PHP注入工具。
C Dosend是一款linux发包攻击工具,可用来实现DDOS攻击。
参考链接为 http://download.csdn.net/detail/linghuncangsang/6664547
D chkrootkit是用来检测rootkit的。
10 以下哪些服务器曾被发现文件解析漏洞?()
A Apache
B IIS
C nginx
D squid
答案:ABC
A Apache解析漏洞。它 是从右到左开始判断解析,如果为不可识别解析,就再往左判断.
比如upupimage.php.owf.rar “.owf”和”.rar”?这两种后缀是apache不可识别解析,apache就会把upupimage.php.owf.rar解析成php.
B IIS 解析漏洞。一是IIS5.x/6.0中的/xx.asp/xx.jpg ,网站下建立文件夹的名字为.asp、.asa 的文件夹,其目录内的任何扩展名的文件都被IIS当作asp文件来解析并执行。
二 是123.asp;.jpg会被服务器看成是123.asp,IIS6.0 默认的可执行文件除了asp还包含这三种/upupimage.asa/upupimage.cer /upupimage.cdx
C nginx解析漏洞。一是nginx默认Fast-CGI开启状况下,黑阔上传一个名字为upupimage.jpg,内容为?PHPfputs(fopen('shell.php','w'),'?php eval($_POST[cmd])?>');?>的文件,然后访问upupimage.jpg/.php,在这个目录下就会生成一句话木马 shell.php。
二是Nginx在图片中嵌入PHP代码然后通过访问xxx.jpg%00.php来执行其中的代码,影响版:0.5.,0.6.,0.7 = 0.7.65, 0.8 = 0.8.37
D Squid爆出来的更多是拒绝服务攻击。它是一个高效的Web缓存及代理程序,最初是为Unix平台开发的,现在也被移植到Linux和大多数的Unix类系统中,最新的Squid可以运行在Windows平台下。
11 以下命令可以用来获取DNS记录的是?()
A traceroute
B ping
C dig
D who
答案:C
解释:
A traceroute 。该命令为追踪路由情况。
B ping 。该命令为检测网络是否通畅。
C dig 。linux下查询域名解析有两种选择,nslookup或者dig,如 digwww.csdn.net
D who 。该命令为查询登录linux系统的用户数目。
12 linux 环境下,查询日志文件最后100行数据,正确的方式是?()
A mv -100 log
B grep -100 log
C cat -100 log
D tail -100 log
答案:D
解释:
A mv -100 log 。该为mv命令,是移动文件或者文件夹的,与查看日志无关。
B grep -100 log 。该为grep命令,是筛选或者匹配关键词的,与查看日志无关,但是可以配合其他命令进行查看日志。
C cat -100 log 。该命令为顺序查看命令,查看log的前一百行数据(包括空行)。
D tail -100 log。 该命令为倒序查看名,查询log文件的最后100行数据。故选择D
13 Firefox浏览器插件Hacbar提供的功能()
A POST方式提交数据
B BASE64编码和解码
C 代理修改WEB页面的内容
D修改浏览器访问referer
答案:ABD
解释:
A POST方式提交数据。通过在hackbar勾选”Enablepost data",hackbar可以显出示该功能。
B BASE64编码和解码。通过在hackbarc菜单栏”Encoding",hackbar可以显出示该功能。
C 代理修改WEB页面的内容。该功能属于插件firebug的。hackbar 无该项功能。
D修改浏览器访问referer。通过在hackbar勾选”EnableReferer ",hackbar可以显出示该功能。
14 以下哪个攻击可以提供拦截和修改http数据包功能?()
A Metasploit
B Hackbar
C Sqlmap
D Burpsuite
答案:D
解释:
A Metasploit 。 它为集成的漏洞攻击平台,具有多种攻击载荷和shell。但是无法提供拦截和修改http数据包。
B Hackbar 是用来进行sql注入、测试XSS和加解密字符串的。可以用来快速构建一个HTTP请求(GET/POST)等。但是不能拦截和修改HTTP数据包。
C Sqlmap 是用来进行sql注入,获取数据库信息和获操作系统信息,甚至注入后门webshell的,但是不能拦截和修改HTTP数据包。
D Burpsuite是可以通过设置浏览器代理进行网络渗透的,用于攻击Web应用的集成平台。可以进行拦截和修改HTTP数据包。
15 以下哪几种工具可以对网站进行自动化web漏洞扫描?()
A hackbar
B AWVS
C IBM appscan
D Nmap
答案:BC
解释:
A hackbar 是用来进行sql注入、测试XSS和加解密字符串的。可以用来快速构建一个HTTP请求(GET/POST)等。但是不能自动化web 漏洞扫描
B AWVS 是业界非常推荐的漏洞扫描神器,它拥有数目非常多而且最强大的漏洞检测脚本,国内多数人使用破解版,它可以进行自动化web漏洞扫描。
C IBM appscan 是国外IBM安全公司的一款非常厉害的安全漏洞扫描产品,能够扫描各种生产环境的WEB,也就是说它也可以进行自动化web 漏洞扫描。
D Nmap是一款网络端口扫描工具,可以扫描各种端口及其服务甚至是系统漏洞检测,从它的NSE脚本可以看到它也可以进行WEB漏洞扫描,但是需要复杂的配置命令,故它不能进行自动化web漏洞扫描。
答案:BC
16. 黑客控制一台Windows服务器,发现IE浏览器使用了代理,可以访问外网,执行如下命令发现
C:\Users\test>ping www.baidu.com -n 1
正在 Pingwww.a.shifen.com [14.215.177.38] 具有32字节的数据:
请求超时
C:\Users\test>telnet www.baidu.com 80
正在链接www.baidu.com...无法打开到主机的连接。
在端口 80: 连接失败。
通过如上信息判断,以下哪些反弹shell操作会失败
A windows/meterpreter/reverse_http
B icmp协议的后门
C windows/meterpreter/reverse_https
D windows/meterpreter/reverse_tcp
答案: ABC
解释:IE浏览器使用了代理,可能HTTP协议会受到防火墙限制。ping不通百度说明ICMP协议也受影响。故http、https、icmp协议的反弹shell都会失败
17 关于XcodeGhost事件的正确说法是()
A 部分Android 产品 也受到了影响
B 应用程序开发使用了包含后门插件的IDE
C 当手机被盗时才有风险
D苹果官方回应APPSTORE上的应用程序不受影响
答案:B
解释:通过Xcode从源头注入病毒XcodeGhost,是一种针对苹果应用开发工具Xcode的病毒。于2015年9月被发现。它的初始传播途径主要是通过非官方下载的Xcode 传播,通过CoreService 库文件进行感染。当应用开发者使用带毒的Xcode工作时,编译出的App 都将被注入病毒代码,从而产生众多带毒APP。用户在iOS设备上安装了被感染的APP后,设备在接入互联网时APP会回连恶意URL地址init.icloud-analysis.com,并向该URL上传敏感信息(如设备型号、iOS 版本)。回连的C?php
$username = $_GET(username);
echo $uername
mysql_query("select * from orders where username = "$username"or dir (mysql_error():
?>
A 命令执行漏洞
B SQL注入漏洞
C 文件包含漏洞
D 反射XSS漏洞
答案:ABD
解释:
A 命令执行漏洞--->>>>
$username = $_GET(username);echo $username
参数不过滤,可以将username设置某个命令。
B SQL注入漏洞--->>>>
mysql_query("select* from orders where username = "$username"or dir (mysql_error():
参数不过滤,可以将username设置某个带截断的查询语句。
C 文件包含漏洞--->>>>该代码中不涉及文件操作。
D 反射XSS漏洞---->>>参数过滤不严格,可以输入
username=script>alert(1)/script>
21 以下哪些是CSRF漏洞的防御方案?()
A 检测HTTPreferer 字段同域
B 限制sessioncookie的生命周期
C 使用验证码
D cookie关键字段设置HttpOnly属性
答案:ABCD
解释:
CSRF漏洞防御主要可以从三个层面进行,即服务端的防御、用户端的防御和安全设备的防御。
A 检测HTTPreferer 字段同域---》》》》根据HTTP协议,在HTTP头中有一个字段叫Referer,它记录了该HTTP请求的来源地址。在通常情况下,访问一个安全受限页面的请求必须来自于同一个网站。比如某银行的转账是通过用户访问0x05 分析题-2 参考设计: 1 首先在用户输入密码时,加上比较复杂的验证码,同时以时间戳加密生成随机数,加上csrf_token等 2 然后再把用户账号密码通过前端加密传输到服务器后台,并且设置同源策略, 3 服务器验证客户端的身份后,通过随机安全数加密session和cookie返回给客户端。 4 客户端与服务器建立连接。 参考回答: 1 首先检查服务器上该webshell 存放路径,分析该webshell的行为。 2 清除webshell及其他后门,然后根据webshell入侵的方式,进行修补漏洞,升级程序。 3 对服务器进行安全加固,对服务器上的系统和web服务进行安全设置。 4 综合上述,攥写安全报告(例如首先确定是什么漏洞和服务器上的运维设置导致黑客可以成功上传webshell,如新出现的0day 或者服务器web 的运维配置不当或者弱口令;然后分析了清除了哪些后门,这些后门对服务器造成了哪些影响-盗用了数据库、或者安装了新后门进行DDOS或者其他方面。接着写为避免了这些漏洞,我做了哪些安全加固--修改web服务器配置,对系统进行加固,安装相关的杀毒软件,调整WAF策略等等。最后给出后面定期的安全检查和维护措施。 参考文章: http://blog.csdn.net/qq_29277155/article/details/51126190 http://blog.csdn.net/qq_29277155/article/details/50971727 个人水平有限,难免有纰漏,欢迎各位多多指导!!^^^_^^^ * 本文原创作者:ymmy,本文属FreeBuf原创奖励计划,未经许可禁止转载。46. 某应用程序需要完成用户输入密码登陆的操作,通过网络与服务器交互进行校验,请设计一个安全的网络传输方案,并说明原因。(出于性能方面的考虑,不使用https通信)
47. 外部某平台报告,某网站被黑客上传了Webshell并截图证明。老板指定身为安全工程师的你全权协调处理此事,请思考,你需要做些什么?