您的位置:首页 > 其它

腾讯 2016 春招笔试(伪)权威解析

2016-06-04 09:47 302 查看
这篇文章的原文在:原文地址

我真是不得不吐槽,腾讯的笔试题里有好多错别字,而且格式混乱

1、应用程序开发过程中,下面哪些开发习惯可能导致安全漏洞?

在程序代码中打印日志输出敏感信息方便测试(√)

在使用数组前判断是否越界

在生成随机数前使用当前时间设置随机数种子(√)

设置配置文件权限为
rw-rw-rw-
(√)

只说一下第三个吧,给出篇文章随机数是骗人的

这篇文章中提到的另一篇文章我也给出链接,省去大家查找的时间当随机不够随机:一个在线扑克游戏的教训

看完你就可以了解为什么这个做法也会导致安全漏洞,微信公众号
黑客 Hub
转载这篇文章时给出的解释认为这样不会产生漏洞是错误的

2、以下哪些工具提供拦截和修改 HTTP 数据包的功能?

BurpSuite

HackBar

Fiddler

Nmap

Fiddler 和 BurpSuite 都可以拦截和修改 HTTP 数据包

常用的 Firefox插件

Firebug(抓包与各种调试)

Tamper Data(拦截修改)

Live Http Header(重放功能)

Hackbar(编码解码/POST提交)

Modify Headers(修改头部)

3、坏人通过 XSS 漏洞获取到 QQ 用户的身份后,可以进行以下哪些操作?

偷取 Q 币

控制用户摄像头

劫持微信账户

进入 QQ 空间

个人认为只有进入 QQ 空间可以

4、以下哪些工具可以抓取 HTTP 数据包?

BurpSuite

Wireshark

Fiddler

Nmap

BurpSuite、Wireshark 和 Fiddler 都是常见的抓包工具

5、以下哪些说法是正确的?

iOS 系统从 iOS6 开始引入了 kernel ASLR 安全措施(√)

主流的 iPhone 手机 SoC 芯片内置了 AES 及 RSA 硬件加解密引擎(√)

安卓系统采用了安全引导链(Secure Boot Chain),而 iOS 系统则未采用

Android 4.1 系统默认启用了内存 ASLR(√)

6、以下哪些是常见的 PHP 一句话木马?

<?php assert($_POST[value]);?>
(√)

<%execute(request("value"))%>


<?php @eval($_POST[value]);?>
(√)

<%if(request.getParameter("f")!=null)(new java.io.FileOutputStream(application.getRealPath("/")+request.getParameter("f"))).write(request.getParameter("t").getBytes());%>


第二个是 asp 的一句话木马,第四个是 jsp 的一句话小马,这已经不能算是一句话了,assert 是可以替换 eval 的函数,不过 assert 常被禁用,所以场景很少,不知道算不算得常见?

7、以下哪个说法是正确的?

XcodeGhost 是一种可以直接远程手机控制权的攻击方式

Wormhole 是一种可以直接远程手机控制权的攻击方式

“心脏滴血”是一种可以直接远程手机控制权的攻击方式

ShellShock 是一种可以直接远程手机控制权的攻击方式

XcodeGhost 是在 2015 年被发现的大量 Xcode 编辑器被第三方代码注入,导致编译出来的 App 都存在后门

Wormhole 是在百度全家桶上大面积爆发的一个后门程序

“心脏滴血”是 OpenSSL 库存在的漏洞,影响很大

ShellShock 链接的 CVE 号是 CVE-2014-6271,不细说了

8、在同一 bash 下依次执行

root@kali:~/Desktop# whoami
root
root@kali:~/Desktop# function whoami() {echo 1;}
root@kali:~/Desktop# whoami


最后一次执行 whoami 的结果为?

root

1(√)

echo 1

echo 1;

9、以下哪个工具可用来进行 DDOS 攻击

菜刀

WSI

Dosend

Chkrootkit

Dosend 是一个 DDOS 工具,Chkrootkit 是一个 rootkit 扫描器,菜刀是一个 Webshell 管理工具, WSI 是一个注入扫描工具

10、以下哪些服务器曾被发现存在文件解析漏洞?

Apache

IIS

Nginx

Squid

Apache、IIS、Nginx 都曾经被发现存在文件解析漏洞

相关可参考乌云知识库这篇文章:文件解析漏洞的总结

而 Squid Cache 是 HTTP 代理服务器软件。Squid 用途广泛的,可以作为缓存服务器,可以过滤流量帮助网络安全,也可以作为代理服务器链中的一环,向上级代理转发数据或直接连接互联网

11、在以下命令中,可用来获取域名 DNS 记录的命令是?

traceroute

ping

dig

who

traceroute 命令让你追踪网络数据包的路由途径

who 命令显示关于当前在本地系统上的所有用户的信息

dig 命令是一个用于询问 DNS 域名服务器的灵活的工具

12、Linux 环境下,查看日志文件的最后 100 行数据,正确的方式是?

mv -100 log

grep -100 log

cat -100 log

tail -100 log

tail 尾巴的意思,tail 命令可以从指定点开始将文件写到标准输出

13、Firefox 浏览器插件 HackBar 提供的功能?

POST 方式提交数据

base64 编码和解码

代理修改 Web 页面内容

修改浏览器访问 Referer

上面讲过火狐的插件:Tamper Data(拦截修改) 和 Modify Headers(修改头部)

14、以下哪些工具能提供拦截和修改 HTTP 数据包的功能?

Metasploit

HackBar

SQLMap

BurpSuite

BurpSuite 是常用的抓包改包工具

15、以下哪几种工具可以对网站进行自动化 Web 漏洞扫描?

HackBar

AWVS

IBM AppScan

Nmap

只有 HackBar 是一个火狐的插件而已,其余都可以

16、黑客控制了一台 Windows 服务器,发现 IE 浏览器使用了代理,可以访问外网,执行如下命令发现

ping www.baidu.com -n 1

请求超时

telnet www.baidu.com 80

在端口80:连接失败

通过如上信息判断,以下哪些反弹 Shell 操作会失败

windows/meterpreter/reverse_http

icmp 协议的后门(√)

windows/meterpreter/reverse_https

windows/meterpreter/reverse_tcp(√)

ping 是 ICMP 协议, telnet 是 TCP 协议,故此二者不会成功

17、关于 XcodeGhost 事件说法正确的是?

部分 Android 产品也受到影响(√)

应用程序开发者使用了包含有后门插件的 IDE(√)

当手机被盗时才会有风险(×)

苹果官方回应 AppStore 上的应用程序不受影响(×)

百度实验室发现 Unity-4.X 版本的多平台游戏开发工具也存在类似后门,所以 Android 系统也会受到影响

18、Android 应用中导致 HTTPS 中间人攻击的原因有?

没有对 SSL 证书进行校验(√)

没有对主机名进行校验(×)

SSL 证书被泄露(√)

使用 WIFI 连接网络(√)

19、以下是 AES 加密的明文和密文字符串,请问该加密使用了哪种分组模式?

加密前:
0000000000000000
0000000000000000
000000000000000
加密后:
fbcd723ec4f10sf24a9472349f722954
fbcd723ec4f10sf24a9472349f722954
13d7ffbfe87a41c1fef1f429af20babo


ECB(√)

CBC

CFB

OFB

分组密码有五种工作体制:

1.电码本模式(Electronic Codebook Book (ECB))

2.密码分组链接模式(Cipher Block Chaining (CBC))

3.计算器模式(Counter (CTR))

4.密码反馈模式(Cipher FeedBack (CFB))

5.输出反馈模式(Output FeedBack (OFB))

这应该是最简单的电码本模式,不能隐藏明文的模式也是 ECB 的缺点之一

20、下面这段代码存在安全问题,会产生什么安全漏洞?

<?php
%username = $_GET['username'];
echo $username;
mysql_query("select * from orders where username = ".$username." or dir(mysql_error()));


命令注入漏洞

SQL 注入漏洞(√)

文件包含漏洞

反射 XSS 漏洞

不知道会不会产生其他漏洞,PHP 不太懂

21、以下哪些是 CSRF 漏洞的防御方案?

检查 HTTP Referer 字段是否同域(√)

限制 Session Cookie 的生命周期

使用验证码(√)

Cookie 关键字段设置 HTTP Only 属性

常见的 CSRF 防御方案有如下三种:

验证 HTTP Referer 字段

添加 Token

添加验证码/再次输入密码

22、Android Manifest.xml 中哪项配置可能造成安卓应用内部文件被窃取?

android:allowbackup=”true”

android:name=”com.tsrc”

android:debug=”true”

android:targetSdkVersion=”17”

个人认为允许备份和允许调试会存在泄露风险,如果错误请指正

23、以下哪些工具可以抓出 Windows 明文密码?

WCE

mimikatz(√)

Quarks PwDump

CAIN

讲道理,这四款工具都能得到 HASH 值,但是明文密码似乎只有 mimikatz 才能做到

Windows Server 2012 用户密码 HASH 抓取

mimikatz 也有轻量调试器的功能,感兴趣的同学可以去试一试

24、如果一个网站存在有 CSRF 漏洞,可以通过 CSRF 漏洞做下列哪些事情?

获取网站用户注册的个人资料信息

修改网站用户注册的个人资料信息

冒用网站用户的身份发布信息

以上都可以(√)

25、以下关于 CC 攻击说法正确的是?

cc 攻击需要借助代理进行(√)

cc 攻击利用的是 tcp 协议的缺陷(√)

cc 攻击难以获取目标机器的控制权(√)

cc 攻击最早在国外大面积流行(√)

CC 攻击是攻击者借助代理服务器生成指向受害主机的合法请求,实现 DDOS

两台机器通信要进行一个所谓的三次握手,首先是客户机发出一个请求 (SYN) ,服务器收到该请求后,填写会话信息表 (TCB,保存在内存中),并且向客户机反馈一个回应包 (SYN-ACK) ,此时连接处于 TIME_WAIT 状态,如果最终没有收到客户机的 ACK 信息包,会尝试隔一段时间再发送一次回应包 SYN-ACK,这样经过多次重试后,客户机还没有回应的话,服务器才会关闭会话,并从 TCB 中删除掉该会话。这个等待过程大约为 30 秒。当攻击者同时发起十万计的请求时 (SYN) 到服务器开放的端口,并且本身拒绝发送 SYN-ACK 回应时,服务器的的 TCB 将会很快超过负荷,并且攻击者可以伪造包中的源 IP 地址,这样攻击者还不会被服务器返回的包堵住

26、Android 开发过程中,下面哪些开发习惯可能导致安全漏洞?

在程序代码中插入 Log() 方法输出敏感信息方便调试(√)

在应用正式版 Anndroidmanifest.xml 中设置 android:debuggable = “false”

使用 SecureRandom 时使用安全的方法设置 seed

设置应用配置文件为任意用户可读写(√)

27、iOS 平台上常用的 HOOK 框架有?

Xposed

IntentFuzzer

Drozer

Substrate

可以看出,前三个工具都是针对安卓平台的,只有 Substrate 是针对 iOS 的

详细了解安卓上的利用工具可以看这盘博文:Android 漏洞挖掘工具总结

28、PHP 提供以下哪些函数来避免 SQL 注入?

mysql_real_escape_string(√)

escapeshellarg

htmlentities

addslashes(√)

escapeshellarg 是用来防范命令执行的,htmlentities 是用来防范 XSS 的,只有打勾的那两个才是防范注入的

详情请参考乌云相关文章:PHP安全编码命令执行

29、执行
nmap 10.5.5.5.1
默认会扫描以下哪个端口?

21

3389

8080

1024

这道题····· 的指令····· nmap 都不认,这就很尴尬

猜测是打错了,可能想考默认扫描的端口范围,1-1024 这样的话就会选 AD

30、黑客通过以下哪种攻击方式,可能大批量获取网站注册用户的身份信息?

XSS

CSRF

越权

以上都不可以(√)

31、sql 注入(mysql数据库)中常用的延时函数是

sleep()

32、Linux 上查看用户 SSH 登陆历史记录的指令 last ,它读取的日志文件名是什么?、

/var/log/wtmp


常见的日志文件:

/var/log/wtmp,一个用户每次登录进入和退出时间的记录
/var/log/btmp,记录登录失败的记录
/var/run/utmp,记录当前登录的每个用户


who 命令查询 utmp 文件并报告当前登录的每个用户

w 命令查询 utmp 文件并显示当前系统中每个用户和它所运行的进程信息

last 命令查询 wtmp 来显示自从文件第一次创建以来登录过的用户

users 命令用单独的一行打印出当前登录的用户,每个显示的用户名对应一个登录会话

33、黑客为了清理自己在服务器上操作的指令历史记录,他可以执行什么命令?

[root@localhost root]# history -c //清空历史执行命令
root@localhost root]# echo > ./.bash_history //或清空用户目录下的这个文件即可


bash 执行命令时不是马上把命令名称写入 history 文件的,而是存放在内部的 buffer 中,等 bash 退出时会一并写入,可以使用
history -w
命令要求 bash 立即更新 history 文件

34、国内历史最久的黑客安全技术峰会是

XCon安全焦点信息安全技术峰会是国内历史最悠久、最知名、最权威、举办规模最大的信息安全会议之一

35、2015 年百度被曝出的 WormHole 漏洞的原理是

应用程序开启了 40310/6259 端口作为后门

详细分析请看乌云文章WormHole虫洞漏洞分析报告

36、ASLR 是对抗_攻击的技术

ASLR 是位址空间布局随机化技术,是一种针对缓冲区溢出的安全保护技术,随机分配布局可以有效提高恶意软件预测目的地址的难度,从而提升阻止缓冲区溢出的成功率,目前主流操作系统已经全部采用

37、Windows 下查看系统用户列表的命令是什么?

Windows 系统,在命令行下执行
net user


Linux 系统,在命令行下执行
cat /etc/passwd


38、当访问 Web 网站某个资源不存在时,返回的 HTTP 状态码是什么?

HTTP Status Code 404

39、被称为“ XSS 终结者”的使用 HTTP 头部来限制资源的策略是

同源策略,应对办法是“跨域”

40、C语言中字符串“学习C”所占的内存空间大小可能是_字节

一个汉字占两个字节,存储字符串本身需要五个字节,字符串结束符
\0
也要计算,故为六个字节

以后要做个测试才能确定这样想是否正确

41、zmap 单次执行可以对多个端口同时扫描(√)

42、TCP 和 UDP 协议对比,TCP 传送数据更安全(√)

43、用 system 启动的 cmd 执行
net use \10.1.1.10\c$”password/user”administrator”
提示连接成功,然后在 administrator 用户下
net use
可以看到连接

44、Redis 常用的默认端口是 873(×)

Redis 默认监听端口是 6379

45、DES、RC4均属于对称加密算法

对称加密算法是加解密使用相同的密钥,常见的对称加密算法有DES、3DES、AES、Blowfish、IDEA、RC5、RC6

46、某应用程序需要完成用户输入密码登陆的操作,通过网络与服务器交互进行校验,请设计一个安全的网络传输方案,并说明原因。(出于性能方面的考虑,不使用https通信)

47、外部某平台报告,某网站被黑客上传了 Webshell 并截图证明。老板指定身为安全工程师的你全权协调处理此事,请思考,你需要做些什么?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息