备战美亚,一场综合比武,镜像+解析,如麻雀一样剖析题目,提高自己,题量较大。

链接:https://pan.baidu.com/s/1hreNDluRVpU3JzblVgzJYA?pwd=ybww
提取码:ybww
--来自百度网盘超级会员V3的分享

我只做恶意程序和服务器,这两块美亚杯也是我做的,所以我会对这两块仔细解析,特别是服务器部分,涉及到网站重构和数据库,虽然美亚杯不考,但是长安杯喜欢考,美亚杯面很广很细,长安杯比较深。

第一部分是恶意程序分析的

1:通过对1.dll恶意程序分析,得知DllMain的地址是什么?(格式按大写字母与数字组合填写  如:AB12DC)

关于ida软件我运用的很差,光装ida就装了很久,我电脑原来是python3.10环境,就是和ida环境也不符,然后涉及到授权等问题,英文的我不太看得懂,选择永乐汉化版,但是有感觉和英文版不一样,所以我推荐大家还是下载英文版,最后我迫于无奈还是把程序放到虚拟机里面分析,终于是可以了,那现在就开始。

DllMain是程序头,一般打开就可以看到了,地址的话敲一下空格键,就可以切换到视图(有地址的,可以这样转化)但是永乐汉化版不行,我建议两个软件都下载,然后熟悉英文版,最后使用英文版的)

 那么就看到地址了

 2:通过对1.dll恶意程序分析,gethostbyname函数定位到什么地址?(格式按大写字母与数字组合填写  如:AB12DC)

alt+T搜索文本

但是在import里面看到的是这样的,发现上图看到的只是引用地址,会有很多引用地址,但是函数地址应该到import里面去看才是真正的函数地址。

3:接上题,有多少个函数调用了函数gethostbyname (格式数字     如:1)

在输入(import)里面ctrl+f搜索函数,如何接下来是要看一个交叉引用,简单说就是点快捷键x

但是不是在这个界面,而是点进函数后,就是双击函数,再按x

 在view-A界面交叉引用,这里其他消息什么方向,文本,地址都简单,关键是类,type中的p表示调用流、r表示读取属性,去除重复出现的函数,得到的就是实际调用的次数。这里p表面看起来有9个,但是实际上只有5个,应该有几处调用地址都是相似的,其实是一个地方调用的。

 4:通过对1.dll恶意程序分析,详细分析位于0x10001757处的gethostbyname调用,DNS请求将被触发的域名是?(格式:小写字母、数字、.组合  如www.sina12.com)

首先地址定位,快捷键g,找到这个位置

 然后涉及到一个汇编语言理解问题,吧off10019040放入eax中,然后再eax中添加0Dh,push eax是一个入栈操作,call应该就是引用gethostbyname,所以这几个东西变成一体了,所以应该点到off——10019040里面去看一下。

 发现是这样的后面的就是网址,这题我理解的不好,可以看其他大佬的解析会好很多。

 5:通过对1.dll恶意程序分析,IDA Pro识别了在0x10001656处的子函数中的多少个局部变量?(格式:填写数字 如:1)

g定位到函数,这里我要解释一下,这里符号有正有负,带负号的就是局部变量,正号的就是参数,所以除了最后那个4是参数,其余23个全部是局部变量

 6:通过对1.dll恶意程序分析,IDA Pro识别了在0x10001656处的子函数中的多少个参数?(格式填写数字    如:1)

解释在上面,那就是1个

7:通过对1.dll恶意程序分析,字符串“\cmd.exe /c”位于哪里?(格式:格式按大写字母与数字组合填写  如:AB12DC)

字符串搜索alt+T,由此发现了地址,但是这样不对,因为这样搜我发现有两个,应该类似于前面的引用,所以

 

 所以最好到字符串窗口里面查看,英文版的string

 就是这个地址,虽然我也不能完全解释,但是这个应该就是类似于引用的和真实位置

 8:接上题,在引用“\cmd.exe /c” 的代码所在的区域发生了什么?

首先在字符串窗口点击

 进入后,看到aHiMasterDDDDDD里面写了大概文字的东西,看到shell,应该是shell远程连接

承认这题我不会做,网上大佬解释也没怎么看明白。

 9:通过对1.dll恶意程序分析,0x1000FF58处子函数中若对 ”robotwork” 字符串的memcmp比较是成功的,会发生什么?

实在太复杂,本人不会,可以看其他大佬的解析

10:通过对1.dll恶意程序分析,,PSLIST导出函数最后导出了什么文件(格式小写字母、数字与.组合填写  如:abc1123.abc)

首先在导出表格里面找到

 后续操作应该是分析函数,但是太难了,实在太复杂,本人不会,可以看其他大佬的解析

11:通过对1.dll恶意程序分析,DllMain直接调用了多少个API?(格式填写数字   如:1)

直接调用是1级调用,然后视图里面看,答案是4个

 12:接上题,DllMain函数有几个参数?(格式填写数字   如:1)

显然,三个正的,三个参数

 13:通过对1.dll恶意程序分析,程序在0x10001358处对sleep的调用会睡眠多少秒?(格式:填写数字 如:1)

太难

14:通过对1.dll恶意程序分析,在10001701处是一个对Socket的调用。它的第2个参数是什么?(格式:填写数字   如:1)

直接跳转到地址,就可以看到,6,1,2

 15:通过对1.dll恶意程序分析,搜索in指令(0xED)的使用。使用这个指令目的什么?(格式:填写数字  如 :10000)

不会

16:通过对1.dll恶意程序分析,将光标跳转到0x1001D988处,对加密的内容进行解密,解密后的内容为?(格式填写大小写字母、 空格、 , 组合 如:abc,dgMACgd dddAA) (10分) 

不会

ida到此结束,我把基础的做完了,复杂的实在不会。

下面开始手机部分

1:计算该APP安装包的SHA256校验值(答案格式填写大写字母与数字组合格式: DE0B2B9DFF1F359E33219A159A70C0A09F2A491835245D1A1E1BCFB6E18909 )

hashcale跑一下

2: 请对 APP 进行取证分析,APP 使用的包名(格式com.tencent.mm)

雷电跑一跑

3:请对APP进行取证分析,APP使用的第三方服务name名称是什么?

由于我不做手机和流量,这一块我就不写了,我直接写服务器。

1:通过对小型集群服务器分析,该服务器系统类型是?

linux

 2:通过对小型集群服务器分析,该服务器系统时区是?

data     CST

 3:通过对小型集群服务器分析,该服务器的sshd端口是多少?(答案格式:填写数字   如:10)

22

 4:小型集群服务器涉案网站的域名?(答案格式填写小写字母 . 数字组合 如:www.sina.com)

www.huarun.com

这题我有猜的成分,因为我安装nginx和apach的配置文件找都找不到,所以只能去网站里面猜一下

5:涉案网站做了反向代理操作,使用的策略是什么?(答案格式:填写汉字 如:负载均衡)

策略就是负载均衡,如果细致一点可以写到轮循。

这个网站是宝塔构建的,虽然弘连没有直接跑出来,但是也看得到。

下面一篇博文是对宝塔的文件结构讲解

宝塔系统目录结构_sunsineq的博客-CSDN博客_宝塔数据库文件目录

从这个看,应该去找他的配置目录

 但是意外发现源文件的配置没有的,可能被出题方删掉了,真的邪恶。

那就去看backup里面的备份文件,最终在此目录下成功找到网站,后面有三个网站,我判断是负载均衡,至于轮循,实在过于细致,我建议可以网上深入了解一下反向代理和负载均衡

什么是负载均衡?有哪几种策略?_ITPUB博客

正在上传…重新上传取消正在上传…重新上传取消

 负载均衡是很明显的,三个端口号

6:Docker中数据库容器的运行日志是在哪里,写出完整路径下的日志文件?(答案格式填写小写字母与数字等组合  如:  /www/wwroot123/ab344/aa.log)

/var/lib/docker/containers/05821c99dcc43ce6eb571fe19869cd2e877d53f321f2502225c77d42def8ef6d

 7:涉案网站管理后台登录密码的加密算法?

经过我的暴力搜索,发现网站里面实在没有,首先文件已经被删除了,要看也只能去备份里面看,备份里面也没有,目前为止是无解 的,但是毕竟还有容器,出题人的意思就是叫我去翻看容器。

容器里面也很复杂,经过大佬的提示,找到文件,但是不得不说,大佬对网站架构非常熟悉,能很快地找到文件所在位置

 这个方法最可以,做的出来,但是我实在不会,我选择爆搜,我猜加密关键词是:pass MD5这种,但是发现搜出来有几万,就不能,然后就搜索登录成功,登录失败这类关键词,网站涉及验证,登录界面不可能不用到这类关键词,这类关键词。

但是这个方法不可,我发现关键的网页文件是拉不出来的,很牛逼,就是看不到的,要单独对那个文件搜索,答案还是搜得到的

 md5(md5($data['password']

8:涉案网站的数据库是否开启general日志?(答案格式填写是或者否)

首先是要开启数据库

 但是发现数据库那个就是开启不了

docker start 数据库名 -i 能看具体消息

 这里显示my.cnf第36行出错了,我们点进去看一下

一般情况是无法进入容器修改的,所以这用到一个大佬的操作

先把容器里的文件转移到tmp文件夹下,然后修改,修改好了cp回去。那样就间接完成了修改

 第36行有注释,把注释去掉就改好了

然后我就成功启动了,前后耗时一小时,真是醉了

 还有第二种方法,直接全局搜索,去修改相关文件

总共有这么多文件,我们要找mysql/my.cnf  由于文件在容器里面,所以我认为只有两条比较符合,我都点进入看一下,如何找到她的第36行

两个都尝试后发现是第二个文件关键字符mysql被注释掉了,所以报错,很简单,把注释删掉了就哈了

 修改完后我们可以看到他已经重启成功了。

因为涉及网站,网站肯定有数据,所以我们最直接的思路就是重启网站,我一开始做决定太难,所以选择navicat连数据库然后做,我现在第二遍做,想连一下网站试试看。

可知这是nginx,所以思路的第一步就是启动nginx,但是由于启动失败,所以去找原因为什么会报错。

启动命令:ststemctl start nginx

检索错误:systmctl status nginx.service

之后就要登录数据库,那就涉及到数据库密码问题,思路有

1:去网站里面找

2:去历史记录里面看

3:绕过

其实首选的应该是历史记录,其次我觉得绕过和网站都可以,但是这题容器绕过操作和改myqsl注释一样,都是蛮麻烦的,所以我去看看历史记录。

我一开始在root里面看历史记录发现没有,后面才想起来历史记录要到容器里面看

 登录后因为是要看general日志,我一开始用单引号没有用,最后用双引号猜搞出来,但是网上很多教程都是单引号,也成功了,也不知道为什么,这题就是没有开启。

9:用户名"yw0218"的提现余额是多少元?(答案格式填写数字 保留小数点后二位  如:123.12)

 我水平太差,网站重构不现实,我就想用navicat链接数据库,然后直接看数据。

链接虚拟机内部docker操作办法,高亮!

因为数据库在docker里面,直接连接我试过不行,经过浙警许专家教学,我发现要找到docker的ip,然后(常规)直接连docker的ip  而且ssh通道连虚拟机ip 二者缺一不可,  docker inspect 容器名   就可以看到容器信息172.18.0.5

 几个命令:

docker exec -it 容器名 /bin/bash          进入某容器

ctrl+D是退出mysql

ctrl+p+q是退出容器

docker inspect 容器名   是查看容器信息

nevicat里面看到了数据库信息

 9:曾经的用户名为"fang25"的用户,其提现银行卡号是多少?(格式:填写数字:111111111111111111)

我直接在nevicat里面查询找不到,看到题目问曾经,就猜到这个客户改名字了,所以又要去看日记,看看他新的名字是什么

就查询日记文件所在的位置

 进入目录查看文件后发现一条文件修改记录,原名叫tepulang

 理论上是可以看到的全局搜索找到了信息,但是点开后发现没有银行卡,就是个人信息中没有,但是表格里有,我猜测应该是某种对应关系,所以选取姓名等进行搜索

因为我找到了她的姓名,所以最后通过姓名搜索找到了卡号

 10:曾经的用户名为"fang25"的用户,其于2021-10-22日充值金额为多少元?(格式:填写数字取整  如:123)

我把uid作为关键词查找流水信息

 经过我的时间戳查询,22号只有一笔,21000

 

11:曾经的用户名为"fang25"的用户,其于2021-10-22日进行利益一笔交易,其成交价格为多少元?(格式:填写数字 保留小数点后三位  如:123.123) 

依靠暴力找到,物品是橡胶,价格如下

 12:通过查看后台可以看出一共有多少产品?(答案格式填写数字  如:123)

应该就是下列这两个表总,可以看到后表齐全很多,总共14

 

 13:一共有多少用户被禁用?(答案格式填写数字  如:123) 

根据用户列表的ustatue可以大致猜测被禁用的  15个

 14:根据设置规则,单笔提现最大金额是多少?(格式:填写数字取整  如:123) 

 我看数据表是96万多,但是应该不是的

 发现这里才是网站数据

 15:交易账号为”Ywei520”的用户再交易平台上委托金额是多少元?(格式:填写数字 保留小数点后一位  如:123.1)

 

上面一直方法是做数据库,也就是不重构网站,我接下来想做一下重构网站的做法,那还是重头开始吧:

四、服务器集群分析
46. 通过对小型集群服务器分析,该服务器系统类型是?
A:unix64 ; B:unix32 ; C:linux 32 ; D:linux 64 ;

 

47. 通过对小型集群服务器分析,该服务器系统时区是?
A:EAT; B:ECT; C:CST; D:GMT; 时区是上海时间, utc+8=cst

 

48. 通过对小型集群服务器分析,该服务器的 sshd 端口是多少?(答
案格式:填写数字 如: 10)         

 

22 49. 小型集群服务器涉案网站的域名?(答案格式填写小写字母 . 数字
组合 如: www.sina.com
1:可以查看网站日志
2:可以看网站配置文件

从配置文件看nginx,我没有找到,但是网站看,可以看到是华润

如果觉得不放心,那么从日记里面看,我觉得也是看得出来的

 

50. 涉案网站做了反向代理操作,使用的策略是什么 ?( 答案格式:填写 汉字 如:负载均衡 )
我当时就觉得这个是弘连出题
弘连很喜欢负载均衡,就是考反向代理的策略,这题是反向代理无疑,轮训其实我猜得到,但是说不清楚。
这里上server,应该就是三个服务器,然后对应不同端口,我也不知道怎么说,建议大家了解一下大佬的博客

 

 

 

51.Docker 中数据库容器的运行日志是在哪里,写出完整路径下的日
志文件? ( 答案格式填写小写字母与数字等组合 如 :
/www/wwroot123/ab344/aa.log)
安装常规思路,驱动docker,然后查看docker日记所在的位置,点进去就OK
由于docker05无法启动,所以我们要去找原因,一般日记里面记录了
docker inspect 查看容器具体信息这里就可以看到容器路径

本来从做题的角度而言,是不用修复这个容器的,但是我是学习,所以还是要把容器修复

查看日记后发现报错是这四个关注第三,/etc/mysql/my.cnf这个文件夹下36行出问题

所以去找到这个文件夹

find / name my.cnf

进入发现mysql被注释,删了就好

然后就显示重启成功

 然后目前我们访问网站是这个结果

 目前这个样子,说明网站启动了,在后面还补充了一段内容,说明网站是可以正常启动了。

出现这种原因是因为网站的路由有问题,没有找到合适的入口文件

52. 涉案网站管理后台登录密码的加密算法?
A:md5; B:md5($salt.md5($pass)); C:md5(md5($pass.$salt)); D:md5($pass.$salt);
md5(md5($data['password'].$result['utime']))

 

就是要查看网站源码,理论上说是要进入容器,然后查看网站源码,但是我找不到。
由于我实力太差,只能做做可视化,可以用docker可视化工具 portainer-ce
还可以用宝塔命令,就是安装宝塔
安装新版宝塔命令:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh
install.sh ed8484bec
就是安装宝塔,然后用宝塔可视化
要是这个没用,还有一个备胎命令,我就是备胎做好的

好在还有一个后备的万能命令:

if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_panel.sh;else wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh;fi;bash install_panel.sh ed8484be

 登录宝塔面板后题目就变成可视化了

 顺利找到数据库信息

 

 

53. 涉案网站的数据库是否开启 general 日志? ( 答案格式填写是或者
)
既然涉及数据库,那就需要先进入数据库
用查看命令看到他没有开启
好了,不管怎么样,要在这里和网站重构说再见了,由于nginx启动不了,伪静态失效了,就算我绕过也是做不出来的,不过涉及到密码绕过长安杯会考,累了,不做了。到这里学习停止了,虽然死在黎明前,但是强烈感谢浙警许专家,爱了爱了。

 

54. 用户名 "yw0218" 的提现余额是多少元? ( 答案格式填写数字 保留
小数点后二位 如: 123.12)
提现余额应该为当前所剩的余额, 139443.20
对后台登录逻辑进行绕过,登录后台,用户名为 hr888
根据逻辑,自己算一条 md5 替换进去,实现登录,登录后台是基本功
查看 yw0218 的提现余额
55. 曾经的用户名为 "fang25" 的用户,其提现银行卡号是多少?(格
式:填写数字: 111111111111111111
6217003370004267819
在后台搜寻该用户无果,因为考虑到曾名为,则一定会有修改,修改一定会留下记录 / 日志,想到之前查
询过是否开启 general_log ,查看 general_log 储存的位置,查看该日志
general_log 日志中找到了 fang25 用户改名的操作过程。 改名后该用户叫 tepulang uid 18986 ,获取用户名后后面的题目直接进行一些查询操作即可。 56. 曾经的用户名为 "fang25" 的用户,其于 2021-10-22 日充值金额为
多少元? ( 格式:填写数字取整 如 :123)
20000
57. 曾经的用户名为 "fang25" 的用户,其于 2021-10-22 日进行利益一
笔交易,其成交价格为多少元? ( 格式:填写数字 保留小数点后三位
如: 123.123)
1983.379
成交价格为此处的建仓点位,这些投资、股票类概念需了解
58. 通过查看后台可以看出一共有多少产品? ( 答案格式填写数字
:123)
10
59. 一共有多少用户被禁用? ( 答案格式填写数字 如 :123)
15
数据库中一个 ustatus 的状态,推测很可能是是否禁用的 挑选一个状态为 0 一个状态为 1 的用户,发现 0 的用户为启用的, 1 的用户为禁用的
对数据库中的数据按 ustatus 进行计数
select count(*) from wp_userinfo where ustatus = 1 共有 15 个用户被禁用
60. 根据设置规则,单笔提现最大金额是多少? ( 格式:填写数字取整
:123)
5000000 61. 交易账号为 ”Ywei520” 的用户再交易平台上委托金额是多少元?
( 格式:填写数字 保留小数点后一位 如: 123.1)
65796.5
查看 Ywei520 用户在网站上的委托金额
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

modest —YBW

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值