第一章 Lab
关于Lab
教材恶意代码分析实战
课后练习恶意代码样本https://practicalmalwareanalysis.com或https://nostarch.com/malware.htm
以下是我自己做课后Lab的时候,一些零散笔记。详细答案可以参考教材附录C
Lab 1-1
Lab01-01.exe | Lab01-01.dll | |
---|---|---|
文件是否匹配到已有反病毒软件特征 | 是 | 是 |
这些文件是什么时候编译的 | 2010-12-19(VirusToal.com->Details->History->Creation Time) | 2010-12-19 |
是否可能存在加壳或混淆 | 否(软件PEiD) | 否 |
是否有导入函数?若有,从导入函数能看出什么? | 有,有意思的导入函数FindFirstFile、FindNextFile和CopyFile。这些函数告诉我们,这个程序在搜索文件系统和复制文件。 | 有,最有趣的导入函数是CreateProcess 和 Sleep。我们也看到,这个文件导入了 WS2_32.dll 中的函数,这些函数提供了联网功能。 |
是否有任何其他文件或基于主机迹象 | 检查C:\Windows\System32\kerne123.dll来发现额外的恶意活动。请注意,文件 kerne123.DLL,用数字 1 代替了字母 l。 | |
是否有基于网络的迹象 | 该文件中包含一个私有子网IP地址127.26.152.13的字符串。这个IP地址预示着这个程序是为了教学目的而不是恶意目的而编制的,如果这是真正的恶意代码,这个IP地址应该是可路由的公网IP地址,它会是一个很好的基于网络的恶意代码感染迹象,可以用来识别这个恶意代码。 | |
猜一猜这些文件的目的 | 用来安装与运行DLL文件 | 该文件可能是一个后门 |
注:课本1.3 查找字符串
步骤:
- 下载Strings
- cmd -> 进入下载的strings.exe可执行文件所在文件夹 -> 使用 strings 命令查看
附图:
cmd:
strings.exe所在文件夹:
恶意样本“Lab01-01.exe”所在文件夹:
Lab 1-2
脱壳工具UPX下载
解压压缩包,脱壳步骤如下:
cmd -> 进入下载的upx.exe可执行文件所在文件夹 ->
upx -o newFilename -d originalFilename
注:-d 选项表示对文件进行脱壳,-o 选项指定了输出文件名
附图:
cmd:
upx.exe所在文件夹(Lab01-02.exe脱壳后文件重命名为newFilename):
第一章 Lab的更多相关文章
- 读高性能JavaScript编程 第一章
草草的看完第一章,虽然看的是译文也是感觉涨姿势了, 我来总结一下: 由于 大多数浏览器都是 single process 处理 ui updatas and js execute 于是产生问题: js ...
- 《深入理解计算机系统》(CSAPP)读书笔记 —— 第一章 计算机系统漫游
本章通过跟踪hello程序的生命周期来开始对计算机系统进行学习.一个源程序从它被程序员创建开始,到在系统上运行,输出简单的消息,然后终止.我们将沿着这个程序的生命周期,简要地介绍一些逐步出现的关键概念 ...
- 《Django By Example》第一章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:本人目前在杭州某家互联网公司工作, ...
- MyBatis3.2从入门到精通第一章
第一章一.引言mybatis是一个持久层框架,是apache下的顶级项目.mybatis托管到goolecode下,再后来托管到github下.(百度百科有解释)二.概述mybatis让程序将主要精力 ...
- Nova PhoneGap框架 第一章 前言
Nova PhoneGap Framework诞生于2012年11月,从第一个版本的发布到现在,这个框架经历了多个项目的考验.一直以来我们也持续更新这个框架,使其不断完善.到现在,这个框架已比较稳定了 ...
- 第一章 MYSQL的架构和历史
在读第一章的过程中,整理出来了一些重要的概念. 锁粒度 表锁(服务器实现,忽略存储引擎). 行锁(存储引擎实现,服务器没有实现). 事务的ACID概念 原子性(要么全部成功,要么全部回滚). 一致性 ...
- 第一章 Java多线程技能
1.初步了解"进程"."线程"."多线程" 说到多线程,大多都会联系到"进程"和"线程".那么这两者 ...
- 【读书笔记】《编程珠玑》第一章之位向量&位图
此书的叙述模式是借由一个具体问题来引出的一系列算法,数据结构等等方面的技巧性策略.共分三篇,基础,性能,应用.每篇涵盖数章,章内案例都非常切实棘手,解说也生动有趣. 自个呢也是头一次接触编程技巧类的书 ...
- 《JavaScript高级程序设计(第3版)》阅读总结记录第一章之JavaScript简介
前言: 为什么会想到把<JavaScript 高级程序设计(第 3 版)>总结记录呢,之前写过一篇博客,研究的轮播效果,后来又去看了<JavaScript 高级程序设计(第3版)&g ...
随机推荐
- 【python041--构造方法:构造和析造】
一.魔法方法 1.魔法方法总是被双下划线包围,例如:__init__ 2.为什么在类实例化的时候,有时候需要构造__init__,有时候不需要呢 举例说明: #定义一个矩形的类,需要长和宽两个参数,计 ...
- topcoder srm 693 div1 -3
1.给出一个$n$个顶点的无向带权图.其中顶点$i,i+1$之间存在边,$i,i+2$之间存在边.而且仅有这些边.现在删掉其中的一些边,剩下的边满足图仍然是2联通的情况下使得权值和最小? 思路:其实就 ...
- Python3 tkinter基础 Entry insert delete 点击按钮 向输入框赋值 或 清空
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- 小C的数学问题 【单调栈】
问题 J: 小C的数学问题 时间限制: 1 Sec 内存限制: 128 MB 提交: 565 解决: 141 [提交] [状态] [命题人:外部导入] 题目描述 小C是个云南中医学院的大一新生,在 ...
- HDU1285 确定比赛问题【拓扑排序+优先队列】
题目 有N个比赛队(1<=N<=500),编号依次为1,2,3,....,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得每个队的比赛成绩, ...
- Git rebase使用
目录 rebase的优点和缺点 分支内合并多个commit为一个新commit使用: 命令: 使用: 将其他分支合并到主分支,表现为线性: 将其他分支多个commit合并到主分支,并形成一个新comm ...
- 树形dp|无根树转有根树|2015年蓝桥杯生命之树
2015年蓝桥杯第十题--生命之树(无根树dfs) ①暴力解法:枚举子集(选点) + dfs判断连通性(题目要求连通)满足上面两个条件下找出最大值权值和 ②dfs无根树转有根树,递归找最优 先学习无根 ...
- FJNU2018低程F jq解救fuls (贪心乱搞)题解
题目描述 一天fuls被邪恶的"咕咕咕"抓走了,jq为了救fuls可谓是赴汤蹈火,费了九牛二虎之力才找到了"咕咕咕"关押fuls的地方. fuls被关在一个机关 ...
- MD5+salt 工具类
import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.securit ...
- oracle单行函数 之 转换函数
to_char(字符串 \ 列, 格式字符串):将日期或者数字变成为字符串显示 注意点:时间字符串或时间类型列 与 格式字符串 必须是一一对应,若是多了少了相关字符会报错(除了使用systemd ...