2021年下半年软考信息安全工程师下午案例题及解析

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

软考信息安全工程师考试中下午的案例分析是您能否通过考试的关键案例能通过则整体通过概率就很高因为从21年考试来看上午的基础知识考得很简单下午的案例很难。

 

和软考文科类考试不一样信安的案例不是靠背靠记或者瞎写把卷子写满就能过的会就是会不会就是不会所以打好基础建立自己的知识体系很重要至强老师有多年网络安全从业经验同时熟悉软考的特点大家有信安考试相关的疑难问题都可以进行咨询。

试题一共20分

阅读下列说明和图回答问题1至问题5将解答填入答题纸的对应栏内。

【说明】在某政府单位信息中心工作的李工要负责网站的设计、开发工作。为了确保部门新业务的顺利上线李工邀请信息安全部门的王工按照等级保护2.0的要求对其开展安全测评。李工提供网站的网络拓扑图如图1-1所示。图中网站服务器的IP地址是192.168.70.140数据库服务器的IP地址是192.168.70.141。至强老师专业软考信安辅导

王工接到网站安全测评任务以后决定在内网办公区的信息安全部开展各项运维工作王工使用的办公电脑IP地址为192.168.11.2。

【问题1】(2分)

按照等级保护2.0的要求政府网站的定级不应低于几级该等级的测评每几年开展一次

【问题2】(6分)

按照网络安全测评的实施方式测评主要包括安全功能检测、安全管理检测、代码安全审查、安全渗透、信息系统攻击测试等。王工调阅了部分网站后台处理代码发现网站某页面的数据库查询代码存在安全漏洞代码如下

1 <?php

2 if(isset($_GET[Submit]))

3

4 //Retrieve data

5 $id=$_GET['id'];

6

7$getid="SELECT first_name,last_name FROM users WHRER user_id='$id'";

8$result=mysql_query($getid)or die('<pre>’.mysql_error.'<pre>’);

9

10 $num=mysql_numrows($result);

11

12 $i=0;

13 while($i<$num){

14

15 $first=mysql_result($result,$i,"first_name");

16 $last=mysql_result($result,$i,"last_name");

17

18 ehco '<pre>’

19 ehco 'ID:'.$id.'<br>First name:'$first.'<br>Surname:'.$last;

20 ehco'<pre>'

21

22 $i++;

23     }

24 }

25 ?>

(1)请问上述代码存在哪种漏洞

(2)为了进一步验证自己的判断王工在该页面的编辑框中输入了漏洞测试语句发起测试。请问王工最有可能输入的测试语句对应以下哪个选项

A.or 1=1--order by 1       B.1 or'1'='1'=1 order by 1#

C.1'or 1=1 order by 1#      D.1'and'1'='2'order by I#

(3)根据上述代码网站后台使用的哪种数据库系统

(4)王工对数据库中保存口令的数据表进行检查的过程中发现口令为明文保存遂给出整改建议建议李工对源码进行修改以加强口令的安全防护降低敏感信息泄露风险。下面给出四种在数据库中保存口令信息的方法李工在安全实践中应采用哪一种方法

A.Base64   B.MD5   C.哈希加盐   D.加密存储

【问题3】(2分)

按照等级保护2.0的要求系统当中没有必要开放的服务应当尽量关闭。王工在命令行窗口运行了一条命令查询端口开放情况。请给出王工所运行命令的名字。

【问题4】(2分)

防火墙是网络安全区域边界保护的重要技术防火墙防御体系结构有基于双宿主机防火墙、基于代理型防火墙和基于屏蔽子网的防火墙。图1-1拓扑图中的防火墙布局属于哪种体系结构类型

【问题5】(8分)

根据李工提供的网络拓扑图王工建议部署开源的Snort入侵检测系统以提高整体的安全检测和态势感知能力。

(1)针对王工建议李工查阅了入侵检测系统的基本组成和技术原理等资料。请问以下有关Snort入侵检测系统的描述哪两项是正确的(2分)

A.基于异常的检测系统B.基于误用的检测系统C.基于网络的入侵检测系统D.基于主机的入侵检测系统

(2)为了部署Snort入侵检测系统李工应该把入侵检测系统连接到图1-1网络拓扑中的哪台交换机(1分)

(3)李工还需要把网络流量导入入侵检测系统才能识别流量中的潜在攻击。图1-1中使用的均为华为交换机李工要将交换机网口GigabitEthernet1/0/2的流量镜像到部署Snort的网口GigabitEthemet1/0/1上他应该选择下列选项中哪一个配置(2分)

A.observe-port 1 interface GigabitEthernet1/0/2

interface GigabitEthemet1/0/1

port-mirroring to observe-port 1 inbound/outbound/both

B.observe-port 2 interface GigabitEthernet1/0/2

interface GigabitEthemet1/0/1

port-mirroring to observe-port 1 inbound/outbound/both

C.port-mirroring to observe-port 1 inbound/outbound/both

observe-port 1 interfaceGigabiEthenet1/0/2

interface GigabitEthenet1/0/1

D.observe-port 1 interface GigabitEthernet1/0/1

interface GigabitEthemet1/0/2

port-mirroring to observe-port 1 inbound/outbound/both

(4)Snort入侵检测系统部署不久就发现了一起网络攻击。李工打开攻击分组查看发现很多字符看起来不像是正常字母如图1-2所示请问该用哪种编码方式去解码该网络分组内容(1分)

(5)针对图1-2所示的网络分组李工查看了该攻击对应的Snort检测规则以更好地掌握Snort入侵检测系统的工作机制。请完善以下规则填充空(a)、(b)处的内容。(2分)

(a) tcp any any->any any (msg:"XXX";content:"  (b)  ";nocase; sid:1106;)

试题一参考答案与试题解析

【问题1】参考答案二级每两年

试题解析等保2.0要求关键信息基础设施“定级原则上不低于三级”测评分数的要求由60分提升至75分以上。政府站群系统属于关健信息基础设地所以定级应不低于三级、依据《信息安全等级保护管理办法》公通字2007 43号文第三级信息系统应当每年至少进行一次等级测评。

但教材上第499页最下面说了政府网站的信息安全等级原则上不应低于二级三级每年测评一次二级每两年测评一次。还是忠于教材。

【问题2】参考答案(1)SQL注入漏洞(2)C(3)mysql(4)C

试题解析(1)在上述代码中可以看到PHP后台直接从前端获取参数ID并且将该ID用于拼装成一条SQL语句这条语句中的Where部分没有经过任何过滤和条件限制直接使用了参数ID因此这部分代码存在SQL注入攻击漏洞如果考生对PHP代码不是很熟悉实际上也可以根据上下文从(2)的提问以及提供的选项联想到是使用了SQL注入攻击漏洞。

(2)是对SQL注入攻击的进一步考察。将用户名设置为1’or1=1 order by1之后后台执行的SQL语句就变为

SELECT first_name,last_name FROM users WHRER user_id='1'or 1=1 order by 1#

由于1=1恒成立因此可以做到不用输入正确用户名和密码就能完全跳过登录验证。因此正确答案选择C。

(3)从PHP代码中可以发现最终执行SQL语句时使用的是mySQL_query($getid)由此可以判断系统所使用的后台数据库是MySQL。

(4)由题目可知数据库保存口令的数据表存放了明文口令这是极不安全的。解决的方法是将口令进行哈希加密后再存入数据库但攻击者知道哈希值后可以通过查表法倒推出原始的口令。所以这种方式仍然具有较大的安全隐患。为了解决上述问题就是加盐(Salt)就是加随机值。即在口令后面加一段随机值(Salt)然后再进行Hash运算。

【问题3】参考答案netstat

试题解析题目中并没有指定所使用的系统是Windows、Linux还是Unix但是这些操作系统都可以运行netstat指令并用不同的参数查看本机开放的所有服务端口。这样也就知道开放了哪些服务。

【问题4】参考答案基于屏蔽子网的防火墙

试题解析常见的防火墙体系结构有基于双宿主机防火墙、基于代理型防火增和基于屏蔽子网的防火墙其典型特点如下。

双宿主主机以一台双宿主主机作为防火墙系统的主体分离内外网

屏蔽主机一台独立的路由器和内网堡鱼主机构成防火墙系统通过包过滤方式实现内外网隔离和内网保护

屏蔽子网由DMZ网络、外部路由器、内部路由器以及堡垒主机构成防火墙系统。外部路由器保护DMZ和内网、内部路由器隔离DMZ和内网

从本题给出的拓扑图可见防火墙、外部路由器、DMZ网络和内部路由器等部分因此属于屏蔽子网的防火墙。

【问题5】参考答案(1)B、C (2)交换机1 (3)D (4)URL编码(URL encode)

(5)(a)alert  (b)union select

试题解析(1)考查Snort的基本概念Snort属于网络型的误用检测系统。Snort假定网络攻击行为和方法具有一定的模式或特征将所有已发现的网络政击特征提炼出来并建成入侵特征库并把搜集到的信息与已知的特征库进行匹配.如果匹配成功则发现入侵行为。所以(1)选择B和C。

(2)为了部署Snort并对内网的所有网络入侵行为进行有效检测且减少其他不必要的数据干扰因此需将Snort接入到内网的交换机1上因此正确答案是交换机1。

3考察华为交换机镜像端口配置命令作为网络工程师、信息安全工程师经常要做的一个操作就是在网络中收集信息并且不能影响网络中正常的业务数据传输因此需要在交换机上配置镜像端口。华为交换机配置镜像端口的基本步骤是①定义一个观察端口也就是observe port并给这个接口指定编号这个端口用于接入搜集信息的设备②指定一个物理接口作为该观察端口的数据来源。在该物理接口的接口视图下使用命令port mirror to observe port X完成镜像配置其中X是之前创建的观察端口所指定的接口编号。

(4)从软件截获的数据包分析可知报文中存在大量的XX形式的编码这是一种URL编码形式通常称为百分号编码又称为URL编码(URL encode)。该编码形式是“”加上两位的字符字符可以为0123456789 ABCDEF)代表一个十六进制字节。

(5)考查Snort的基本规则配置。其中空(a)表示是Snort的规则行为由于需要告警并记录数据所以空(a)填alert。空(b)则属于Snort的规则选项部分而本题李工目标是发现分组中出现union select关键字就要触发告警信息所以(b)指定关键词union select。

试题二共20分

阅读下列说明回答问题1至问题5将解答填入答题纸的对应栏内。

【说明】通常由于机房电磁环境复杂运维人员很少在现场进行运维工作在出现安全事件需要紧急处理时需要运维人员随时随地运程开展处置工作。

SSH(安全外壳协议)是一种加密的网络传输协议提供安全方式访问远程计算机。李工作为公司的安全运维工程师也经常使用SSH远程登录到公司的Ubuntu18.04服务器中进行安全维护。

【问题1】(2分)

SSH协议默认工作的端口号是多少

【问题2】(2分)

网络设备之间的远程运维可以采用两种安全通信方式一种是SSH还有一种是什么

【间题3】(4分)

日志包含设备、系统和应用软件的各种运行信息是安全运维的重点关注对象。李工在定期巡检服务器的SSH日志时发现了以下可疑记录

Jul 22 17:17:52 humen systed-logiad [1182]:Waching sytem buttons on/dev/input/evet0(Power Button)

Jul 22 17:17:52 humen systed-logiad [1182]:Waching sytem buttons on/dev/input/evet1(AT Translated Set 2 keyboard)

Jul 23 09:33:41 humen sshd [5423]:pam_unix (sshd:auth)authentication failure,logame= uid=0  euid=0 tty=ssh ruser=rhost=192.168.107.130 user=humen

Jul 23 09:33:43 humen sshd [5423]:Failed password for humen from 192.168.107.130 port 40231 ssh2

Jul 2309:33:43 humen sshd [5423]:Connection closed by authenticating user humen 192.168.107.130 port 40231[preauth]

Jul 23 09:33:43 humen sshd [5425]:pam_unix (sshd:auth):authentication failure; logname=uid=0 euid=0 tty=ssh ruser=rhost=192.168.107.130 user=humen

Jul 23 09:33:45 humen sshd [5425]:Failed password for humen from 192.168.107.130 port 37223 ssh2

Jul 23 09:33:45 humen sshd [5425]:Connection closed by authenticating user humen192.168.107.130 port 37223 [preauth]

Jul 23 09:33:45 humen sshd [5427]:pam_unix (sshd:auth):authentication failurelogname= uid=0 euid-0 tty=ssh ruser=rhost=192.168.107.130 user=humen

Jul 239:33:47 humen sshd [5427]:Failed password for humen from 192.168.107.130 port 41365 ssh2

Jul 23 09:33:47 humen sshd [5427]:Connection closed by authenticating user humen 192.168.107.130 port 41365 [preauth]

Jul 23 09:33:47 humen sshd [5429]:pam_unix(sshd:auth):authentication failure;logname= uid=0 euid=0 tty=ssh ruser=rhost=192.168.107.130 user=humen

Jul 23  09:33:49 humen sshd [5429]:Failed password for humen from 192.168.107.130 port 45627 ssh2

Jul  23  09:33:49 humen sshd [5429]Connection closed by authenticating user humen 19.168.107.130 port 45627 [preauth]:

Jul 23 09:33:49 humen sshd [5431]:pam_unix (sshd:auth):authentication failure;logname= uid=0 euid=0 tty=ssh ruser-=rhost=192.168.107.130 user=humen

Jul 23 09:33:51 humen sshd [5431]:Failed password for humen from192.168.107.130 port 42271 ssh2

Jul  23  09:33:51 humen sshd [5431]Connection closed by authenticating user humen 192.168.107.130 port 42271 [preauth]

Jul 23 09:33:51 humen sshd [5433]:pam_unix (sshd:auth)authentication failure;logname= uid=0 euid=0 tty=ssh ruser-=rhost=192.168.107.130 user=humen

Jul 23  09:33:53 humen sshd [5433]:Failed password for humen from 192.168.107.130 port 45149 ssh2

Jul  23   09:33:53 humen sshd [5433]:Connection closed by authenticating user humen 192.168.107.130 port 45149[preauth]

Jul 23  09:33:54 humen sshd [5435]:Accepted password for humen from 192.168.107.130 port 45671 ssh2

Jul 23 09:33:54 humen sshd [5435]:pam_unix(sshd:auth):session opened for user humen by(uid=0)

(1)请问李工打开的系统日志文件的路径和名称是什么

(2)李工怀疑有黑客在攻击该系统请给出判断攻击成功与否的日志以便李工评估攻击的影响。

【问题4】(10分)

经过上次SSH的攻击事件之后李工为了加强口令安全降低远程连接风险考虑采用免密证书登录。

(1)Linux系统默认不允许证书方式登录李工需要实现免密证书登录的功能应该修改哪个配置文件请给出文件名。

(2)李工在创建证书后需要拷贝公钥信息到服务器中。他在终端输入了以下拷贝命令请说明命令中“”的含义。

ssh xiaoming@server cat/home/xiaoming/.ssh/id_rsa.pub>>authorized keys

(3)服务器中的authorized keys文件详细信息如下请给出文件权限的数字表示。

-rw-------1 root root 0 10月18 2018'authorized keys

(4)李工完成SSH配置修改后需要重启服务请给出systemctl重启SSH服务的命令。

(5)在上述服务配置过程中配置命令中可能包含各种敏感信息因此在配置结束后应及时清除历史命令信息请给出清除系统历史记录应执行的命令。

【问题5】(2分)

SSH之所以可以实现安全的远程访问归根结底还是密码技术的有效使用。对于SSH协议不管是李工刚开始使用的基于口令的认证还是后来的基于密钥的免密认证都是密码算法和密码协议在为李工的远程访问保驾护航。请问上述安全能力是基于对称密码体制还是非对称密码体制来实现的

试题二参考答案与试题解析

【问题1】参考答案  22

试题解析安全外壳协议(SSHSecure Shell)是目前较可靠、专为远程登录会话和其他网络服务提供安全性的协议是创建在应用层和传输层基础上的加密隧道安全协议。SSH基于TCP协议端口号是22。

参考答案VPN

【问题2】试题解析教材第457页网络设备和管理工作站之间的安全通信有两种方式一是使用SSH二是使用VPN。

【问题3】参考答案(1)路径var/log/;名称secure

(2)日志文件包含“Accepted password for humen”可以判断登录成功。

试题解析在linux系统中安全日志(var/log/secure)存放了验证和授权方面信息例如sshd就会将所有信息记录其中包括失败登录在这里。

从系统的日志文件可以看到有多条类似“Jul23 09:33:41 humen sshd[5431]:Failed password for humen from192.168.107.130 port 42271 ssh2

Jul 23 09:33:41 humen sshd [5431]Connection closed by authenticating user humen192.168.107.130 port 42271[preauth]”的日志。

从这些日志记录的情况来看是从同一个远程主机192.168.107.130同时向服务器发起humen用户的多个身份验证请求并且每个请求的客户端端口不同说明在该主机上可能启用了某种自动尝试输入密码的程序对humen用户的密码进行破解。并且从最后一条日志“Jul23 09:33:41 humen sshd[5435]Accepted password for humen from 192.168.107.130 port 45671 ssh2

Jul 23 09:33:41 humen sshd [5435]:pam_unix(sshd:auth):session opened for user humen by (uid=0)可以看到用户已经测试密码成功并且成功地建立了连接。说明攻击成功。

【问题4】参考答案(1)/etc/ssh/sshd_config (2)>表示向文件中追加内容

(3)600  (4)systemctl restart sshd   (5)history -c

试题解析(1)由于Linux系统中默认不允许使用免密登录因此需要修改SSHD的配置文件该文件位于/etc/ssh/sshd_config。

(2)Linux系统中命令中常用的和表示命令的输出重定向到指定的文件。表示覆盖原文件内容文件的日期也会自动更新表示追加内容会另起一行文件的日期也会自动更新。

(3)数字权限基本命令格式chmod  abc  file。其中a、b、c各为一个数字分别表示User、Group及Other的三种角色的权限值。角色的权限值又等于r、w、x三个子权限值的和可读时r=4可写时w=2可读可写时x=1。因此三种角色的几种权限值如下

若属性为rwx则对应的数字为4+2+1=7

若属性为rw-则对应的数字为4+2=6

若属性为r-x则对应的数字为4+1=5。

本题中文件权限为rw-root为文件所有者即user所以因此对应的数字权限为600。

(4)Linux服务管理的两种方式是service和systemctl。systemd是Linux系统最新的初始化系统作用是提高系统的启动速度尽可能启动较少的进程尽可能让更多进程并发启动。systemd对应的进程管理命令是systemctl。

启动sshd服务命令service sshd start或者systemctl start sshd。

停止sshd服务命令service sshd stop或者systemctl stop sshd

重启sshd服务命令service sshd restart或者systemctl restart sshd

(5)history命令可以查看之前在控制台输入过的历史命令而要清除这些历史命令信息可以使用history -c命令。

【问题5】参考答案非对称密码体制

试题解析Linux中SSH认证中使用的是非对称密码体制。当客户端确认server的公钥指纹后server端的公钥就会被存放到客户机的用户home目录里客户端再次访问时直接通过密码登录不需要进行公钥确认。

客户端使用服务端公钥将自己的密码加密后发送给服务端服务端收到客户端发过来的加密密码后使用服务端私钥进行解密并将解密出来的密码和/etc/shadow文件里的用户密码对比。如果相同则服务端认证成功则返回登录成功信息并发送一个随机会话口令给客户端该口令用于之后两台主机进行数据传输的一个临时会话口令。

试题三共20分

阅读下列说明和图回答问题1至问题5将解答填入答题纸的对应栏内。

【说明】域名系统是网络空间的中枢神经系统其安全性影响范围大也是网络攻防的重点。李工在日常的流量监控中发现如图3-1所示的可疑流量请协助分析其中可能的安全事件。

【问题1】(4分)

域名系统采用授权的分布式数据查询系统完成域名和IP地址的解析。李工通过上述流量可以判断域名解析是否正常、有无域名劫持攻击等安全事件发生。

(1)域名系统的服务端程序工作在网络的哪一层

(2)图3-1中的第一个网络分组要解析的域名是什么

(3)给出上述域名在DNS查询包中的表示形式(16进制)。

(4)由图3-1可知李工所在单位的域名服务器的IP地址是什么

【问题2】(2分)

鉴于上述DNS协议分组包含大量奇怪的子域名如想知道是哪个应用程序发送的上述网络分组请问在Windows系统下李工应执行哪条命令以确定上述DNS流量来源

【问题3】(6分)

通过上述的初步判断李工认为192.168.229.1的计算机可能已经被黑客所控制(CC攻击)。黑客惯用的手法就是建立网络隐蔽通道也就是指利用网络协议的某些字段秘密传输信息以掩盖恶意程序的通信内容和通信状态。

(1)请问上述流量最有可能对应的恶意程序类型是什么

(2)上述流量中隐藏的异常行为是什么请简要说明。

(3)信息安全目标包括保密性、完整性、不可否认性、可用性和可控性请问上述流量所对应的网络攻击违反了信息安全的哪个目标

【问题4】(6分)

通过上述的攻击流分析李工决定用防火墙隔离该计算机李工所运维的防火墙是Ubuntu系统自带的iptables防火墙。

(I)请问iptables默认实现数据包过滤的表是什么该表默认包含哪几条链

(2)李工首先要在iptables防火墙中查看现有的过滤规则请给出该命令。

(3)李工要禁止该计算机继续发送DNS数据包请给出相应过滤规则。

【问题5】(2分)

在完成上述处置以后李工需要分析事件原因请说明导致DNS成为CC攻击的首选隐蔽传输通道协议的原因。

试题三参考答案与试题解析

【问题1】参考答案(1)应用层 (2)www.humen.com

(3)7777770568756D656e03636F6D  (4)192.168.229.133

试题解析(1)域名系统的服务端程序在操作系统中通常是一个服务进程该服务进程是一个应用程序所以工作在OSI参考模型的应用层。

(2)从截图的信息中可以看到第一个网络分组对应的内容是一个标准的DNS查询查询的A记录是www.humen.com因此可知解析的域名就是www.humen.com。

(3)本题考察字符ASCI的16进制表示形式从图中最下方倒数第三行右半部分的最后4个字符“hume”可从左半部分对应位置找到对应的16进制编码为“0568756d”顺序下寻可得“.humen.com”对应的16进制编码为“0568756d656e03636f6d”。字母与ASCII编码是顺序对应的从其他字母的编码可推导出w的16进制编码就为77。

因此“www.humen.com”对应的代码是7777770568756D656e03636F6D.

(4)从图中可以看到所有的DNS请求都是发往192.168.299.133的并且对DNS请求的返回数据包也是从192.168.229.133发出的因此DNS服务器的地址就是192.168.229.133。

【问题2】参考答案netstat-b

试题解析Windows系统下的netstat命令的参数非常多其中参数-b可以显示在创建每个连接或侦听端口时涉及的应用程序。

【问题3】参考答案(1)后门(2)发送大量域名请求DNS服务器进行解析以期能够导致基于此DNS服务器解析服务不能正常工作。(3)可用性和可控性

试题解析CC(Challenge Collapsar)攻击属于DoS(Denial of Service)攻击的一种也是通过发送大量的请求数据来导致服务器拒绝服务是一种连接攻击。本题由图可知用户192.168.229.1不断以不同的域名请求连接DNS服务器从而可能导致DNS服务器负载过大而宕机因此流量最有可能对应的恶意程序类型是DoS攻击。拒绝服务攻击违反的是信息安全可用性和可控性。

【问题4】参考答案(I)filter;input、forward和output三条规则链

(2)iptables -L  (3)iptables -a input-s 192.168.229.1/32 -dport 53 -j drop

试题解析在iptables中内建的规则表有三个nat、mangle和filter。当命令省略[-t table]时默认的是filter。这三个规则表的功能如下

●nat:此规则表拥有prerouting和postrouting两个规则链主要功能是进行一对一、一对多、多对多等地址转换工作(snat、dnat)这个规则表在网络工程中使用得非常频繁。

●mangle:此规则表有prerouting、forward和postrouting三个规则链。除了进行网络地址转换外还在某些特殊应用中改写数据包的ttl、tos的值等这个规则表使用得很少。

●filter:这个规则表是默认规则表拥有input、forward和output三个规则链它是用来进行数据包过滤的处理动作如drop、accept或reject等通常的基本规则都建立在此规则表中。命令iptables -L用于列出某规则链中的所有规则。

【问题5】参考答案更隐蔽不易被防火墙和基于http协议的拦截工具所拦截。

试题解析DNS属于重要服务大部分互联网的服务和应用依赖于DNS服务限制DNS通信则可能会导致合法服务终端。所以企业防火墙通常配置为允许UDP端口53由DNS使用上的所有数据包即DNS流量通常允许通过企业防火墙而无需深度检查或状态维护。这使得DNS协议成为数据泄密的隐蔽通道。尽管DNS通道速率不高但仍可以构建隧道传输SSH、FTP命令。基于这种方式的攻击活动可靠且难以跟踪。

试题四共15分

阅读下列说明和图回答问题1至问题4将解答填入答题纸的对应栏内。

【说明】近期按照网络安全审查工作安排国家网信办会同公安部、国家安全部、自然资源部、交通运输部、税务总局、市场监管总局等部门联合进驻某出行科技有限公司开展网络安全审查移动App安全检测和个人数据安全再次成为关注焦点。

【问题1】(4分)

为保护Android系统及应用终端平台安全Android系统在内核层、系统运行层、应用框架层以及应用程序层采取了相应的安全措施以尽可能地保护移动用户数据、应用程序和设备安全。

在Android系统提供的安全措施中有安全沙箱、应用程序签名机制、权限声明机制、地址空间布局随机化等请将上述四种安全措施按照其所在层次分填入表4-1的空(1)(4)。

【问题2】(6分)

权限声明机制为操作权限和对象之间设定了一些限制只有把权限和对象进行绑定才可以有权操作对象。

(1)请问Android系统应用程序权限声明信息都在哪个配置文件中给出该配置文件名。

(2)Android系统定义的权限组包括CALENDAR、CAMERACONTACTSLOCATION、

MICROPHONE、PHONE、SENSORS、SMS、STORAGE。按照《信息安全技术移动互联网应用程序(App)收集个人信息基本规范》运行在Android9.0系统中提供网络约车服务的某出行App可以有的最小必要权限是以上权限组的哪几个

(3)假如有移动应用A提供了AService服务对应的权限描述如下

1.<permission

2.        android:name="USER_INFO"

3.        android:label="read user information"

4.        android:description="get user information"

5.        android:ProtectionLevel="signature"

6./>

7.<service android:name="com.demo.AService"

8.        android:exported="true"

9        android:permission="com.demo.permission.USER_INFO"

10</service>

如果其他应用B要访问该服务应该申明使用该服务将以下申明语句补充完整。

11.<          android:name="com.demo.AService"/>

【问题3】(3分)

应用程序框架层集中了很多Android开发需要的组件其中最主要的就是Activities、

BroadcastReceiver、Services以及Content Providers这四大组件围绕四大组件存在很多的攻击方法请说明以下三种攻击分别是针对哪个组件。

(1)目录遍历攻击。

(2)界面劫持攻击。

(3)短信拦截攻击。

【问题4】(2分)

移动终端设备常见的数据存储方式包括①SharedPreferences;②文件存储;③SQLite数据库;④ContentProvider;⑤网络存储。

从以上5种方式中选出Android系统支持的数据存储方式给出对应存储方式的编号。

试题四参考答案与试题解析

【问题1】参考答案(1)权限声明机制(2)应用程序签名机制

(3)安全沙箱(4)地址空间布局随机化

试题解析应用程序层安全机制有接入权限限制、保障代码安全。

应用框架层安全机制有应用程序签名。

系统运行库层安全机制有网络安全、采用SSL/TSL加密通信、虚拟机安全。

Linux内核层安全机制有ACL权限机制、集成的SELinux模块、地址空间布局随机化等。

【问题2】参考答案(1)Manifest..xml(2)MICROPHONE、SMS、LOCATION、PHONE、STORAGE(3)service

试题解析(1)Android应用的权限主要是在Manifest.xml中声明以防止应用程序错误地使用服务、不恰当地访问资源。

(2)按照《信息安全技术移动互联网应用程序(App)收集个人信息基本规范》网络约车服务的最小必要信息有法律法规允许的个人信息网络访问日志、手机号码、用户发布的信息内容、身份认证信息、订单日志、上网日志、行驶轨迹日志、交易信息)实现服务所需的个人信息账号、口令、位置信息、第三方支付信息、客服沟通记录和内容)。

要能使用基于地理位置应用的服务需要有LOCATION权限要能处理客服相关信息需要有通话录音和聊天等相关消息同时还要需要获取手机号码等信息所以需要MICROPHONE、PHONE、SMS权限读取行驶轨迹和日志信息需要有STORAGE权限。

(3)当一个应用要使用服务时必须在应用的清单文件中声明。要声明服务必须添加service元素作为application元素的子元素。例如

<manifest...>

...

<application .. >

<service  android:name=".ExampleService"/>

...

</application>

</manifest>

可将其他属性包括在service元素中以定义一些特性如启动服务及其运行所在进程所需的权限。android:name属性是唯一必需的属性用于指定服务的类名。

【问题3】参考答案(1)Content Providers(2)Activities(3)Broadcast Receiver

试题解析应用程序框架层集中了很多Android开发需要的组件其中最主要的就是Activities、Broadcast Receiver、Services及Content Providers。组件之间的消息传递通过Internet完成。

Activity是用户和应用程序交互的窗口相当于Web应用中的网页用于显示信息。一个Android应用程序由一个或多个Activity组成。基于界面劫持攻击主要是针对Activities。

Service和Activity类似但没有视图。它是没有用户界面的程序可以后台运行相当于操作系统中的服务。

BroadcastReceiver称为“广播接收者”接收系统和应用程序的广播并回应。Android系统中系统变化比如开机完成、网络状态变化、电量改变等都会产生广播。      BroadcastReceiver本质上是一种全局的监听器用于监听系统全局的广播消息因此短信拦截攻击是针对BroadcastReceiver。.

Content Providers主要用于对外共享数据。应用数据通过Content Providers共享给其他应用其他应用通过Content Provider对指定应用中的数据进行操作。因此对目录遍历攻击主要是针对Content Providers。

【问题4】参考答案①②③④⑤

试题解析Android系统提供了五种数据存储方式分别是SharedPreferences、SQLite、Content Provider和File。SQLite属于轻量级数据库支持基本的SQL语法属于常用的数据存储方式SharedPreference本质是一个xml文件常用于存储较简单的参数File是文件存储方法用于存储大量的数据但数据更新困难ContentProvider是Android系统中所有应用程序共享数据存储的方式。网络方式主要通过网络访问该网络提供的网络服务接口实现数据的读/写服务(如WebService数据访问接口)。如大家在学习中遇到问题欢迎通过邮件2976033@qq.com留言给作者以便共同探讨。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6