1.水平权限漏洞的定义是什么?可以利用水平权限漏洞来做什么?如何进行测试和修复?
2.现假设32位Linux系统上有一个带漏洞的驱动程序,其设备名为/dev/vul_test,并且其对应的ioctl代码如下所示。其中,vul_id变量是一个int类型,它的值是我们用户态可以随意控制的。g_vul_info变量是一个VUL_INFO类型的全局数组。
1)现假定g_vul_info在内核中的地址为0xC0500000,请用C语言来实现读取0xC0008000地址开始的100字节的功能。
2)现假定我们不清楚g_vul_info的具体地址,只知道它是在0xC0000000到0xC1000000之间,请用c语言编程来确定g_vul_info变量在内核中的具体地址,并简述你的思路。
typedef struct VUL_INFO_T {
unsigned int value1;
unsigned int value2;
unsigned int value3;
unsigned int value4;
unsigned int value5;
unsigned int value6;
unsigned int value7;
unsigned int value8;
unsigned int value9;
unsigned int value10;
} VUL_INFO;
VUL_INFO g_vul_info[10];
static long vul_ioctl(struct vul_info *info, unsigned int cmd, unsigned long arg)
{
int r = 0;
switch (cmd)
{
case VUL_GET_SOME_INFORMATION:
{
int vul_id = 0;
if (copy_from_user(&vul_id, (void __user *)arg, sizeof(vul_id))) {
return -EFAULT;
}
if (copy_to_user((void __user *)arg, &(g_vul_info[vul_id]), sizeof(VUL_INFO))) {
r = -EFAULT;
}
return (r);
}
}
return (r);
}
3.给你的App做一个手势密码的功能,忽略UI部分的实现,请从安全的角度出发,描述你的实现思路。安全的角度包含但不限于以下几点:1. 存储的安全性;2. 被绕过的风险;3. 被替换的风险
4.网络出问题时,经常听到说看一下下一跳是什么,这里的“下一跳”是指什么?
5.DDoS攻击造成服务不可用的原因是什么?请列举一些对应攻击类型
6如果你发现一个存储XSS漏洞,后台在内网,你会利用这个XSS哪些方式来继续你的渗透测试?
7在浏览器同源策略中,“同源”指的是什么?如果www.taobao.com/crossdomain.xml文件内容如下,是否存在安全问题?会存在什么问题?如何利用和fix?
<cross-domain-policy>
<allow-access-from domain="*"/>
</cross-domain-policy>
8.WAF绕过手段有哪些?请列举两个最有效的手段。
9.请写入下面这种漏洞利用方式以及POC!
<?php
$cluster = $_REQUEST['test'];
$output=shell_exec("grep ${cluster}_123.cfg /var/log/httpd/logs/access_log |tail -10");
if(empty($output)){
echo 'Error';
}else{
echo '<pre>';
echo $output;
echo '</pre>';
}?>
10.请详细描述android从luncher界面点击按钮启动程序的完整过程,要求从3个角度来描述这次启动
(1) android framework层运行时环境
(2)android虚拟机角度,涉及到dex内存载入,类加载,指令解释等
(3)内核角度,主要涉及与内核之间的通信机制。
注意:如果有相关源码阅读经验,尽量从源码角度来描述该实现原理和运行过程。