电子取证——Android文件系统结构
从取证视角认识 Android 分区、/data 目录、应用私有目录、系统数据库、媒体目录和常见题型。
加载过慢请开启缓存 浏览器默认开启
OTE 这个东西呢?OTE 听名字就很清楚它的由来是什么,顾名思义就是OT的扩展嘛。既然有了OT为什么还会有后面的事情呢?
首先我们需要明白密码学的协议的根本目的是为了什么,那肯定是用于实践,所以密码学协议好不好用有两个很重要的评判方面:
- 计算复杂度(computation )
- 通信代价()
我们都知道密码学现在运用最广泛的两种加密方式,一种是公钥密码体系(pubilc-key cryptography),一种是对称加密(Symmertric key cryptography) 而这两类算法都有着自己的特点:
- 基于公钥密码学的加密算法从很大程度来说比对称加密算法更加安全
- 对称加密算法计算速度非常快,效率高
- 相反公钥密码学算法的运算开销特别大,效率很低
而传统的OT协议都基于公钥密码学来设计的,导致了其由于运算开销大,运用场景十分受限的问题,所以后面基于混合加密算法(hybrid encryption scheme)的OTE也就自然而然的诞生了。通俗意义上来讲,混合加密算法就是既使用了公钥密码学,又是用了对称加密设计的算法。
我们来看一个对于混合加密算法比较准确的定义和描述:
The sender first uses the public-key encryption technique to encrypt the private key and sends the encrypted private key to the receiver. After that, the sender breaks the long messages into a set of blocks, encrypts each block using symmetric key encryption with the help of a private key, and sends it to the receiver. The receiver first decrypts the encrypted private key using the public key decryption algorithm. It then applies this private key to decrypt each block of encrypted messages.
Author: Yin
赛题取证背景如下:
2023月8月的一天,香港警方在调查一起网络诈骗案件时,发现有三名本地男子,分別为李大輝(李大辉),浩賢(浩贤)和Elvis CHUI,并确信这三名被捕男子均为大学同学。怀疑三人背后涉及一个庞大的电信诈骗集团。于是将这三名本地男子拘捕,扣押了三人相关的电子设备并进行分析。
现在你被委派处理这件案件,请依据以下资料分析上述三人是否涉嫌犯罪,并还原事件经过。
检材是密码为:3hqGFfT#BYjd74t@f%9fDqs6D^$wVjAvxZkA794UVkVRcq^Zu6Xp87Wp#X3XD%ER!nHzzTnSEMwy8NEGX6A%P&#rBUkxypAPKwX4mP3WZuHnYKRc7sA33hd@qS
作者也是一个新手,如果有什么建议和错误,请与我及时联系,将不胜感激
为了记录自己的学习过程,在题解之后,还有我在解题过程中学习的内容
参考 Android.bin 回答以下题目
李大辉所用手机移动运营商公司的名称?
==Mobile Duck==
李大辉的手机安装了什么即时通讯软件?
==A. WhatsApp==
B. LINE
C. 微信
D. Signal
E. QQ
在李大辉的手机中安装了两个即时通讯软件:==WeChat==,和==WhatsApp==
但是更具分析出来的数据发现WeChat上没有数据,而WhatsApp有明显的使用痕迹,所以认为是WhatsApp![]()
李大辉的手机安装了什么反追踪软件?
在检材的图片中找到了一张截图:
该app具有删除EXIF数据的功能,可以认为是一种反追踪软件,所以填入答案:
==Photo Exif Editor -Metadata==
李大辉的手机是什么时间成功登入 WhatsApp?
A. 2022-08-18_21:52:30
B. 2022-08-19_21:56:23
==C. 2022-08-18_21:56:37==
D. 2022-08-19_06:59:07
E. 2022-08-19_07:01:17
由于一般的App登录都会有短信认证这一项,而且我们在短信中发现了2022-08-18 21:56:23![]()
304-3136.李大辉到美丽好化妆品公司的入职时间是何时?
A. 2016-04-16
B. 2016-06-28
==C. 2017-05-25==
D. 2017-07-25
取证软件读取到了唯一一个.pdf文件,且恰好这一文件是李大辉的职员证,且上面有入职时间的记录:![]()
A. 2022-09-10
B. 2022-09-12
C. 2022-10-05
==D. 2022-11-10==
E. 2022-11-13
在图片目录下发现了一张创建时间与修改时间不同(相差很大的文件),其最后的修改时期为2022-11-10![]()
参考 Server 文件夹下的 Meiya_VPN.vmdk 回答以下题目.
8.这个访问服务器使用了哪个端口?
在usr/local/openvpn_as/etc/db路径下有config_local.db配置文件:
OpenVPN 的官方文档对这些配置项进行了解释:
admin_ui.https.port: OpenVPN Access Server 管理界面(Admin UI)使用的 HTTPS 端口. 默认情况下管理员可以通过 HTTPS 连接到管理界面.
cs.https.port: OpenVPN Access Server 客户端服务(Client Service)使用的 HTTPS 端口. Access Server 提供了一个 Web 服务, 允许用户通过浏览器访问和下载连接配置文件等信息.
vpn.daemon.0.listen.port: 这是 OpenVPN 守护进程监听的端口. 通常此端口用于 OpenVPN 服务器接受客户端连接.
vpn.server.daemon.tcp.port: 这是 OpenVPN 服务器使用的 TCP 端口. OpenVPN 服务器通过此端口接受传入的连接.
==943==
10.哪些文件可以找出这个访问服务器的 Ubuntu 版本?¶
==A. lsb-release==
==B. issue.net==
C. .profile
D. console
issue\.net: 系统登录界面的欢迎信息, 包括系统版本信息, /etc/issue和/etc/issue.net在 login 提示符之前显示. /etc/motd 是在用户成功登录系统之后显示.
B. sys.log
C. bash_history
D. idconfig
##理论题(计算机网络&Nmap)
17. 当计算机正在扫描 8.8.8.8, Nmap 相关的指令是什么?
== A. nmap -sT 8.8.8.8==
B. nmap -sU 8.8.8.8
C. nmap -sn -PR 8.8.8.8
D. nmap -sn -PU 8.8.8.8
计算机扫描8.8.8.8的流量信息通过ip.addr == 8.8.8.8后得到如下结果:
发现使用的是TCP协议,所以使用 -sT 作为参数:![]()
A. nmap -sT 45.33.32.156
==B. nmap -sU 45.33.32.156==
C. nmap -sn -45.33.32.156
D. nmap -sn -45.33.32.156
如图发现扫描45.33.32.156使用的是UDP协议,所以应该使用的参数是(-sU)
19.国强被指派设定一个 DHCP 服务器, 该服务器需借出最后 100 个的 IP 地址, 以下哪个 IP 地址会是被借出的 IP 地址?
A. 10.1.4.255
B. 10.1.4.100
==C. 10.1.4.254==
D. 10.1.4.1
通过提议可知,要出借最后的100个IP20.以下那个协议是属于 TCP/IP 协议?
A. i & iii
B. ii & iv
C. 所有皆是 (All answers belong to TCP/IP protocol)
D. 所有皆否(All answers don’t belong to TCP/IP protocol)
一个名为 Account 的数据库表拥有 5 个列, 以下哪一个指令会产生错误讯息?
A. SELECT * from Account WHERE name=‘Alex’ OR ‘1’=1
B. SELECT * FROM Account WHERE name=‘Bill’ UNION SELECT NULL, NULL, NULL, NULL
==C. SELECT * from Account WHERE name=‘Candy’ ORDER BY 6==
D. SELECT name FROM sys.tables
由于我并没有了解和学习过数据库的相关语法,所以是通过AI进行了解这几句指令的意思的:ChatGTP对C选项给出了如下回答:
解释:这个查询从Account表中选择 name 为 “Candy” 的所有列,并根据第6列进行排序。
如果Account表没有6列,通常会报错;如果有6列,查询结果会按照第6列排序。这种方式可能是攻击者尝试测试表的结构或者引起错误,从而获取数据库的更多信息。(该数据库只有5列)
当客户端收到一个页面请求的 HTTP 状态代码为 304 时, 以下哪种情况最有可能发生?
A. 页面将显示错误
==B. 页面将从浏览器缓存中加载==
C. 浏览器将显示“访问被拒绝”
D. 服务器将复位向客户端到另一个资源HTTP 304状态码表示“未修改”,也就是客户端对于服务器缓存的资源依旧有效,页面将从缓存中直接加载出来
在 HTML 注入攻击中, 以下哪种情况最有可能出现?
A.
<form action="http://1.2.3.4/login.htm">Password:<input type="password" name="pword"> </form>
B.<embed src="http://demo.com/demo.swf"> </embed>
C.<script>alert(‘Correct’)</script>
D.<?php include(“inc/" .$_GET[‘file’];?>
如何预防 HTML 注入攻击?
A. 密钥管理
B. 同源策略执行
C. 会话验证
==D. 输入过滤==
同源策略在浏览器内存中提供 Web 应用程序安全的目的是什么?
A. 防止客户端访问恶意网站
B. 禁止 Web 会话运行外部脚本
==C. 控制来自不同服务器的代码之间的交互==
D. 阻止浏览器运行危险或有害的脚本
同源策略旨在通过限制来自同一来源(协议、主机和端口相同)的脚本与来自其他来源的资源交互,来保护用户数据的隐私和安全,防止恶意网站窃取敏感信息或进行恶意操作。它阻止恶意脚本读取其他源的数据、加载或修改其他源的资源,并限制跨域窗口之间的通信,从而为Web 应用程序提供基本的安全隔。
编写 Nmap 命令以显示以下结果.
Starting Nmap 7.94 (https://nmap.org) at 2023-07-11 18:26 中国标准时间
Nmap scan report for www.baidu.com (220.181.38.149)
Host is up (0.044s latency).
Other addresses for www.baidu.com (not scanned): 220.181.38.150Not shown: 998 filtered tcp ports (no-response)
PORT STATE SERVICE
80/tcp open http
| http-robots.txt: 10 disallowed entries
| /baidu /s? /ulink? /link? /home/news/data/ /bh /shifen/
|/homepage/ /cpro /
443/tcp open https
| http-robots.txt: 10 disallowed entries
| /baidu /s? /ulink? /link? /home/news/data/ /bh /shifen/
|/homepage/ /cpro /Nmap done: 1 IP address (1 host up) scanned in 6.01 seconds
提示:请输入完整的Nmap指令,例如:nmap --script http-brute -p 80 www.google.com 扫了 nmap 的默认 1000 个端口, 只不过只有两个有响应 脚本是http-robots.txt, 题目中有, 端口是 80 和 443, 地址www.baidu.com`.
答案是:nmap --script http-robots.txt www.baidu.com
除了使用 Nmap, 还有其他方法可以验证上述结果, 其中一种方法是使用 Web 浏览器浏览 URL, 编写 URL 以显示上述结果.¶www.baidu.com/robots.txt
参考IOS文件夹回答问题:
53. 根据 com.apple.ios.StoreKitUIService.plist, 这部电话是什么型号?
A. SAMSUNG S23
B. iPhone X
==C. iPhone XR==
D. iPhone XS
E. iPhone 13com.apple.ios.StoreKitUIService.plist的文件如下:<key>hardwareModel</key> <string>N841AP</string>
通过查询可知==N841AP== 是 ==iPhone XR==的型号
根据 com.apple.ios.StoreKitUIService.plist, 上述电话的文件系统是什么?
A. FAT32
B. NTFS
C. HFS+
==D. APFS==
E. EXT4
由两点可以得出答案:
2016年6月14日苹果推出APFS文件系统(iOS >= 10.3, 文件系统都是 APFS(Apple File System))
由com.apple.ios.StoreKitUIService.plist中的信息:<key>buildVersion</key><string>19F77</string>可知:这个手机的IOS版本为 IOS 15.5
根据 ChatStorage.sqlite, 哪些对话已锁定?
line 1 git config –global user.name “mikesezto”
line 2 git config –global user.email “smike@general.org“
line 3
line 4 cd which-truth
line 5 rm .journal
line 6
line 7 git add .journal
line 8 git commit -m “Remove sensitive data”
line 9 git push
line 10
line 11 git clone –mirror http://github.com/smike/which-truth
line 12
line 13 java -jar bfg.jar –delete-files .journal which-truth
line 14 cd which-truth
line 15 git reflog expire –expire=now –all
line 16 git gc –prune=now –aggressive
line 17 git push –force
==A.08==
B.13
C.16
D.17
这道题考察的是git的基本命令,git的常用基本命令如下:git commit -m "Remove senstitive data"是更新命令
line 1 {
line 2 “Version”: “2020-11-12”,
line 3 “Statement”: [
line 4 {
line 5 “Sid”: “PublicReadGetObject”,
line 6 “Effect”: “Allow”,
line 7 “Principal”: ““,
line 8 “Action”: “s3:GetObject”,
line 9 “Resource”: “arn:aws:s3:::company-sensitive-14dnid23nfief/“
line 10 }
line 11 ]
line 12 }
A. 2
==B.7==
C.8
D.9
参考
lin7 中使用通配符*进行设置权限,让所有人看到存在问题
以下哪项是多重身份验证(MFA)的示例
==A. PIN 码和软件令牌==
B. 指纹和视网膜扫描
C. 用户名和密码
D. 一次性短信代码和硬件令牌
MFA是指结合1.知识因素(用户知道的东西)、2.拥有因素(用户拥有的东西)、3.固有因素(用户的生物特征)
A.是1+2 BCD均是两个相同的因素
AWS 用家在户口网络进行设定, 而这些设定会记录用户或第三者的活动. 第 11 行代码中的设定可以找到哪些用户或第三者的活动信息?
line 1 sudo yum install python-pip -y
line 2 sudo pip install opencanary
line 3
line 4 sudo opencanaryd –copyconfig
line 5
line 6 opencanaryd –start
line 7
line 8
line 9 sudo yun install jq -y
line 10
line 11 jq -r .src_host /var/tmp/opencanary.log | grep -V ^$ | sort | uniq > -/sources.txt
line 12 jq -r .logdata.USERNAME /var/tmp/opencanary.log | grep -V null | sort | uniq > -/usernames.txt
line 13 jq -r .logdata.PASSWORD /var/tmp/opencanary.log | grep -V null | sort | uniq > -/passwords.txt
A. User Name 用户的名称
B. User Source 用户的来源
C. Attacker Name 攻击者的名称
==D. Attacker Source 攻击者的来源==
我们通过前9行知道了用户下载了opencanaryd和jq(opencanary是一个开源蜜罐程序)
通过查看文档和询问AI后知道这一行指令的意义是
该行本意是提取所有尝试连接蜜罐(OpenCanary)的源 IP 地址
结合蜜罐的作用,选出D
A. 10.0.0.0
B. 10.0.0.1
==C.0.0.0.2==
D. 10.0.0.3
参考 https://repost.aws/zh-Hans/knowledge-center/vpc-enable-private-hosted-zone.
DNS解析:私有托管区只接受来自 VPC DNS 服务器的 DNS 查询。VPC DNS 服务器的 IP 地址是在 VPC IPv4 网络范围 + 2 的基础上保留的 IP 地址。开启 DNS 解析后,您可以将 VPC DNS 服务器用作执行 DNS 解析的解析器。
A. 软件即服务
B. 平台即服务
==C. 基础架构即服务==
D. 数据即服务
参考:https://developer.aliyun.com/article/1630549
这个对于四种服务类型都做了比较详细的解释
A. 包含敏感信息
B. 无法访问内部系统
C. 限制暴露的服务
D. 没有连接到互联网
参考:https://blog.csdn.net/2401_82888938/article/details/141259627
堡垒机(Jump Server 或 Bastion Host)是一种在网络安全中使用的专用服务器,它位于网络安全的边界上,用于加强访问控制和监控对敏感系统的访问。堡垒机的主要目的是提供一个安全的入口点,以管理和限制对内部网络或关键服务器的访问,同时记录所有的会话活动以便于审计和监控。
·
74. 在 Linux 系统中, 哪个命令可以用于创建文件系统?
A. mount /dev/sda3 /mnt/usb
==B. mkfs-ext4 /dev/sda2==
C. mkfs-ext3 /sys/sda1
D. pvcreate /dev/sda
E. genfstab -U -p /mnt
mount 命令用于挂载mkfs(make file System)的命令是创建文件系统 sda是硬盘的文件,应该在硬件/dev下,C选项目录不存在
pvcrear创建物理卷设备genfstab生成一个包含文件系统信息的配置文件
ls -ilas
|total 0
|9731253 0 drwxr-xr-x 1 user users 4096 Jul 14 13:31 .
|1725961 0 drwxr-xr-x 1 user users 4096 Jul 14 13:29 ..
|90371467 0 -rw-r–r– 2 user users 90 Jul 14 13:30 testing.txt
|90371467 0 -rw-r–r– 2 user users 90 Jul 14 13:30 shotcut-testing.txt
A. link -s testing.txt shotcut-testing.txt
B. ln -s shotcut.txt testing.txt
==C. ln testing.txt shotcut-testing.txt==
D. ln -s testing.txt shotcut-testing.txt
E. ln shotcut.txt testing.txt
首先发现这个题目说的是链接,但是权限符的第一个开头均为l,所以不是软链接,而testing.txt和shotcut-testing.txt两个文件的inode(索引节点)是相同的,所以它们是一种硬链接。硬链接由命令ln生成ln的命令结构:ln 参数 源文件名 目标文件名
注:-s这一选项是专门建立软连接的东西
==A. gdisk /dev/sde ==
B. mke2fs /dev/sdb1 -t ext4
C. mount /dev/sdc1 /mnt/fs_home
D. fdisk -lu
E. lvcreate -l +200 /dev/vg00/log/vol-00
一个系统管理员要扩展运行在 LVM 系统中的服务器存储. 以下哪个命令可以用于扩展 LVM 中的逻辑卷?
A. lvdisplay /dev/vg02/vol-01
B. lvcreate -n /dev/vg02 -l 200
C. lvextend -n /dev/vg02 -l +200
D. lvscan -l +200 /dev/vg02/vol-01
==E. lvresize -l +200 /dev/vg02/vol-01==lvdisplay命令是作用是用于显示LVM逻辑卷空间的大小、读写状态和快照信息等属性,与扩展逻辑卷无关lvcreate命令的作用是创建逻辑卷设备lvextend命令的功能是扩展逻辑卷设备但是选项中的命令存在一定问题,选项应该在路径之前lvscan命令用于扫描当前系统中存在的所有的LVM逻辑卷lvresize功能与命令形式均符合要求
一个系统管理员编写了一个 bash 代码来构建一个 RAID 系统, 如下所示, 将要实现什么类型的 RAID?
#!/bin/bash
hd1=/dev/sda1
hd2=/dev/sdb1
hd3=/dev/sdc1
hd4=/dev/sdd1
mdadm –build /dev/md1 –level=1 –raid-devices=2 $hd1 $hd2
mdadm –build /dev/md2 –level=1 –raid-devices=2 $hd3 $hd4
mdadm –build /dev/md3 –level=0 –raid-devices=2 /dev/md2 /dev/md1
A. RAID 0
B. RAID 1
==C. RAID 1+0==
D. RAID 0+1
E. 这个代码不起作用
这个脚本分三步用 mdadm –build 拼出了一个“嵌套阵列”
用 sda1、sdb1 建立一个 RAID1 镜像阵列
用 sdc1、sdd1 建立另一个 RAID1 镜像阵列
再把 两个 RAID1 阵列 (md1、md2) 做成一个 RAID0 条带阵列
组合起来就是 RAID10 (RAID 1+0)
|● vm-production-xabonline.com
| State: running
| Jobs: 0 queued
| Failed: 0 units
| Since: Fri 2023-05-19 08:37:06 UTC; 2 months 11 days ago
| CGroup:
| ├─init.scope
| │ └─ 1 /sbin/init
| ├─system.slice
| │ ├─bluetooth.service
| │ │ └─ 737 /usr/lib/bluetooth/bluetoothd
| │ ├─dbus.service
| │ ├─docker.service
| │ │ └─ 853 /usr/bin/dockerd -H fd://
| │ ├─libvirtd.service
| │ │ └─ 2975 /usr/bin/libvirtd –timeout 120
| │ ├─polkit.service
| │ └─virtlogd.service
| │ └─ 3176 /usr/bin/virtlogd
| └─user.slice
| └─user-1000.slice
A. systemctl kill bluetooth.service
B. systemctl disable bluetooth.service
C. systemctl down bluetooth.service
==D. systemctl stop bluetooth.service==
E. systemctl rm bluetooth.service
参考网站:https://worktile.com/kb/ask/322273.html
80.cron 服务在 Linux 系统中充当作业调度程序. 它实际上是在 cron 表(crontab)中指定的命令行列表. 现在准备启动和关闭一个 Web 服务器(httpd.service), 上午 8 时 30 分(启动) - 下午 6 时 06 分(关闭);周一至周五. 以下哪个 crontab 设置适用于这种情况?
A. 30 8 * 1-5 * /usr/bin/systemctl start httpd.service 及 06 18 * 1-5 * /usr/bin/systemctl stop httpd.service
==B. 30 8 * * 1-5 /usr/bin/systemctl start httpd.service 及 06 18 * * 1-5 /usr/bin/systemctl stop httpd.service==
C. 30 8 1-5 * */usr/bin/systemctl start httpd.service 及 06 18 1-5 * */usr/bin/systemctl stop httpd.service
D. 30 8 * * * /usr/bin/systemctl start httpd.service 及 06 18 * * * /usr/bin/systemctl stop httpd.service
E. 以上都不是
参考链接:https://blog.csdn.net/TZ_GG/article/details/81302687
这篇博客提到crontab内的基本编辑格式如下:
* * * * * command
分 时 日 月 周 命令
通过比对发现只有B的时间设置与题意相同,在结合文中例子可知,B选项的命令格式符合要求
A. ls -ls
B. ls -asl
C. ls -lAs | wc
D. ls -als | grep ssh
E. None
-a .和..两个隐藏文件夹的数目(ls -lAs 显示的行数)输出出来grep命令进行了过滤,只会把文件名中带有”ssh”的文件显示出来A. ==df -vh==
B. df -sh
C. dl -vh
D. dd -sh
E. dt -vh
这道题很有意思,因为通过检索我没有找到df命令的-v选项,但是这种情况可以把命令带到虚拟机中逐个尝试,观察显示内容即可:
A. docker engine
==B. image==
C. container
D. volumes
E. docker network
通过查询知道 Dockerfile 是用来生成镜像的,通过查询知道image有镜像的意思(但是不是ISO中的I)
84.在 Linux 系统中, 运行中程序的进程并位于内存区域, 可以通过检查文件/proc/[pid]/maps来显示这些内存区域. 以下哪个不是 Linux 系统中的内存区?
A. [heap]
B. [stack]
==C. [paging]==
D. [vvar]
E. [vdso]
执行命令cat /proc/123/maps查看一下进程中出现了哪些内存区域即可,不存在paging这个内存区(需要使用root权限)
B. export-logs>sort
C. export-logs&sort
==D. export-logs|sort==
E. export-logs<>sort
==A. /etc/resolv.conf==
==B. /etc/hosts==
C. /etc/default/names
==D. /etc/nsswitch.conf==
E. /etc/inet/hosts
/etc/hosts配置域名和IP的对应关系 /etc/resolv.conf配置DNS服务器 /etc/nsswitch.conf配置解析顺序,是先解析hosts文件,还是先解析DNS服务器B. /etc/sysconfig/network-scripts
C. /etc/services.conf
D. /etc/inet/hosts
E. Noneofthechoices
参考 Windows 10 文件夹回答以下题目
88. \Users\qqqqq\Downloads, 视频文件(mixkit-two-women-laying-together-925-medium.mp4), 在 MFT 中分成多少个 Data Cluster 储存?
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
$ hexo new "My New Post" |
More info: Writing
$ hexo server |
More info: Server
$ hexo generate |
More info: Generating
$ hexo deploy |
More info: Deployment