恶意代码分析实战笔记(一)
恶意代码分析实战解题笔记(一)LAB01-01.dll和LAB01-01.exe 文件分析首先拖到www.virustotal.com里面进行在线分析,得到如下结果
大多数杀毒引擎分析出这是一个特洛伊木马病毒
分析LAB01-01.exe得到的结果如下
和上面的结果类似
然后再虚拟机上进行分析
LAB01-01.dll文件没有加壳,就是个普通的VS6编译出的dll,里面的代码区段也很明显,多了个重定位区段。
LAB01-01.exe这个文件也没有加壳,就是普通VC6编译出的EXE,代码区段也很明显
通过strings查看LAB01-01.exe里的关键字符串
除了基本的KERNEL32.DLL和MSVCRT.DLL之外,还看到了调用CreateFileA,CopyFileA等可疑的API,通过字符分析,猜测是把程序的lab01-01.dll复制到C:\Windows\system32\kernel132.dll,改个名字,然后查找,调用该程序。
这个分析完了之后再看看dll里的字符
看到了WS2_32.dll是用于网络套接字编程的一个DLL,然后还有一个私有IP地址,估 ...
计算机存储实验
分区表与文件结构任务一 MBS引导扇区读取命令在MS-DOS中输入debug进入debug 模式,通过调用INT 13功能来获取MBS信息
123456789-A 100mov ax,0201mov bx,0600mov cx,0001mov dx,0080int 13int 3-G;通过查看运行的汇编指令来判断是否执行-D 600 800;通过查看数据的方式来查看刚才保存进入缓冲区的数据
由于MS-DOS屏幕无法滚动因此采用查看两次两张图片拼接的方式来显示数据
分析含义MBR的组成
引导程序机器码
分区表×4
定位符/有效位
446B
64B
2B 0X55AA
前446B的机器码在不同的MBR硬盘上都一样的,在XP的MBP硬盘(现在的硬盘基本都是GPT格式的了)通过WINHEX来导出前446B数据,通过IDA打开就可以得到以下汇编代码
由于安装的DOS只有一个分区,因此我们就只需要分析一个分区表
80 01 01 00 0B 7F BF 07 3F 00 00 00 C1 FB 3F 00
80:代表是有引导程序的活动分区
01 01 00:代表起始位置是 ...
WSL下GO环境搭建遇到的坑
WSL下GO环境搭建遇到的坑Windows下面写Go要安装的东西实在是太多了,而且由于Windows下面缺乏像apt这样的包管理器,所以在Linux下面写go似乎要爽得多,于是我搞了一个wsl下的Ubuntu 18.04 tls+vscode,中途遇上了好几个坑,记录下来
以下内容仅适用于win10 1903及以上版本
安装WSL环境网上教程一抓一大把。
在windows程序和功能中勾上windows subsystem for linux然后确定,装好了之后重启,进系统自带的microsoft store,找个ubuntu装上。值得一提的是,这个没有图形界面
然后强烈建议换源,由于神秘因素,用默认的源保管你连gcc都装不上
这是我用的清华的源,还挺不错,教程也很详细
https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/
WSL下GO环境变量的配置首先是Ubuntu下面安装golang,运行sudo apt-get install golang即可
安装好了之后就是环境变量的配置了,网上CSDN的教程东说西说,坑了我很多,最后自己实践出真知, ...
同firewall斗争记
同防火墙的斗争记由于很多资料百度不好查到,而且wiki,还有很多dalao 的blog上面的学习资料要Google才搜得到,因此科学上网就成为了刚需。
心血来潮决定自己去搞一个VPS自己建立翻墙服务,免得天天去为了翻墙去到处找免费VPN,焦头烂额速度还慢,因此就看教程去学习搭建免费VPS进行翻墙,由于我的图床替换脚本被怀疑DDOS了,一天只能上传10张图,就很难顶,有些地方就不截图文字的方式
一、Shadow Socks + BBR plus教程[https://medium.com/@jackme256/%E7%A7%91%E5%AD%A6%E4%B8%8A%E7%BD%91-vultr-vps-%E6%90%AD%E5%BB%BA-shadowsocks-ss-%E6%95%99%E7%A8%8B-%E6%96%B0%E6%89%8B%E5%90%91-968613081aae](https://medium.com/@jackme256/科学上网-vultr-vps-搭建-shadowsocks-ss-教程-新手向-968613081aae)
最开始的网站教的就是去申请一个VPS ...
自己编写代码与UDP模拟软件交互详解
自己编写代码与UDP模拟软件交互详解环境说明windows 10 x64(这个应该问题不大)
python实现
以阶段一的两台设备为例
打开两个模拟软件,软件1选择设备1接口0,软件2选择设备2接口0,然后分别点击重载参数来获取参数,效果如图
随后两边都点击接通连路,并测试连通性,试着传输几个数据,发现效果不错
端口解释
关系说明举个简单的类比大家就知道了
上层端口控制物理层,就如同老板与跑腿的的关系,跑腿的并不处理信息而是只负责传输软件上写的对方端口就是告诉跑腿的要传到哪儿。
举个例子,软件1的上层端口要发送11111111给软件2,然后上层端口就把这个信息交给软件1物理层本地端口11100,然后对方端口设置的是12100,物理层就只需要把这个交给12100也就是软件2的物理层就完事儿了。
软件2的物理层接收到了这个消息之后立马报告给老板,也就是物理层2的上层端口12400
至此,信息的发送就完成了。
什么?软件1怎么知道软件2有没有收到包?模拟软件的名字都写了,这是UDP发包,不管那么多的。
python 实现也就是说我们有2个上层端口,两个相连通的物理端口,OK,也就是说我们 ...