取证简介:

CSI:物理取证

指纹、DNA、弹道、血迹

无力取证的理论基础是物质交换原则

数字取证/计算机取证

智能设备、计算机、手机平板、loT、有线及无线信道、数据存储

事件响应调查------黑客攻击,渗透测试留痕

通用原则----(取证分析全部过程记录文档)

维护证据完整性
       数字取证比物理取证幸运的多,可以有无限数量的拷贝进行分析
       数字HASH值验证数据完整性
 维护监管链
       物理证物保存在证物袋中,每次取出使用严格记录,避免破坏污染
       数字证物原始版本写保护,使用拷贝进行分析
 标准的操作步骤
       证物使用严格按照按照规范流程,即使事后证明流程有误(免责)

数字取证
  不要破坏数据现场(看似简单,实际几乎无法实现)
  寄存器、CPU缓存、I/O设备缓存等易失性数据几乎无法获取
  系统内存是主要的非易失性存储介质取证对象,不修改无法获取其中数据
  非易失性存储介质通常使用完整镜像拷贝保存
  正常关机还是直接拔掉电源(数据丢失破坏)

证据搜索
    数据
    信息
    证据

取证科学
 作为安全从业者
        通过取证还原黑客入侵的轨迹
 作为渗透测试和黑客攻击区分标准
        世纪佳缘事件
        印象笔记渗透测试事件

取证方法

活取证
     抓取文件metadata、创建时间线、命令历史、分析日志文件、哈希摘要、转存内存信息
     使用未受感染的干净程序执行取证,U盘/网络存储收集数据

死取证
     关机后制作硬盘镜像、分析镜像(MBR、GPT、LVM)

内存dump工具(windows)

Dumpit----内存文件与内存大小接近或者稍微大一点,raw格式

取证工具-----Volatility

常用参数

-f  指定文件名

imageinfo:

用于查看我们正在分析的内存样本的摘要信息。具体来说显示主机所使用的操作系统版本、服务包以及硬件结构(32位或64位)、页目录表的起始地址和该获取该内存镜像的时间等基本信息
其中以.raw后缀的文件名就是本机的内存镜像。>imageinfo.txt是把imageinfo命令取得的信息定向的存在imageinfo.txt的文件中。

kpcrscan:

用于查找内存中用于定义内核处理器控制区域(KPCR)的_KPCR结构体信息,具体来说,可以显示每个处理器的详细信息,包括IDT(线程控制符)和GDT(全局段描述符表)地址,当前运行的线程和空闲线程,CPU数量、制造厂商及其速度,CR3寄存器或页目录表基地址的值等信息。该命令的使用方法要用到imageinfo取得的profile信息

dlllist:

能够显示一个进程装载的动态链接库的信息,其显示列表主要包括加载的动态链接库文件的基地址、文件大小以及文件所在路径。

filescan:

此命令将显示系统上的打开的文件,包括已被恶意软件隐藏的文件

handles:

显示在一个进程中打开的处理

modscan:

扫描_ldr_data_table_entry对象的物理内存。显示内核的驱动程序,包括已隐藏/链接的

netscan:

发现TCP / UDP端点和监听器。这个命令将显示一个主动网络连接的列表

pslist:

可以枚举系统中的进程,这条命令通过遍历PsActiveProcessHead指针指向的双向链表枚举当前内存中活跃的所有进程信息,主要包括偏移地址、进程ID号、父进程ID号、线程数量、句柄数量、进程会话ID号以及进程开始和退出的时间

pstree:

这个命令显示跟pslist一样的信息,以树的形式

connscan:

查看网络连接

实例:

查询文件信息,关注 profile

volatility imageinfo -f win.dmp imageinfo

查询数据库文件

volatility hivelist -f win.dmp --profile=Win7SP1x86

volatility hivelist -f win.dmp --profile=Win7SP1x86 pslist

volatility hivelist -f win.dmp --profile=Win7SP1x86 pstree

按虚内存地址查看注册表内容

volatility -f win.dmp --profile=Win7SP1x86 hivelist

volatility -f win.dmp --profile=Win7SP1x86 hivedump -o 0x91fa1648

查看用户账号

volatility -f win.dmp --profile=Win7SP1x86 printkey -K "SAM\Domains\Account\Users\Names"

最后登录的用户

volatility -f win.dmp --profile=Win7SP1x86 printkey -K "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

正在运行的程序、运行过多少次、最后一次运行时间等

volatility -f win.dmp --profile=Win7SP1x86 userassist

进程列表及物理内存

volatility -f win.dmp --profile=Win7SP1x86 pslist

dump 进程内存

volatility -f win.dmp --profile=Win7SP1x86 memdump -p 3684 -D dumpdir/

root@Hitman47:~/dumpdir# hexeditor 3684.dmp

root@Hitman47:~/dumpdir# strings 3684.dmp > 1111.txt

root@Hitman47:~/dumpdir# strings 3684.dmp | grep password

root@Hitman47:~/dumpdir# strings 3684.dmp | grep /

root@Hitman47:~/dumpdir# strings 3684.dmp | grep @

命令历史

volatility cmdscan -f win.dmp --profile=Win7SP1x86

网络连接

volatility netscan -f win.dmp --profile=Win7SP1x86

IE 历史

volatility iehistory -f win.dmp --profile=Win7SP1x86

提取hash

volatility -f win.dmp --profile=Win7SP1x86 hivelist

firefoxhistory 插件

volatility -f win.dmp --profile=Win7SP1x86 firefoxhistory

USN 日志记录插件--NTFS 特性,用于跟踪硬盘内容变化(不记录具体变更内容)

wget https://raw.githubusercontent.com/tomspencer/volatility/master/usnparser/usnparser.py mv usnparser.py /usr/lib/python2.7/dist-packages/volatility/plugins/

volatility -f win.dmp --profile=Win7SP1x86 usnparser --output=csv --output-file=usn.csv

Timeline-------插件从多个位置收集大量系统活动信息

volatility -f win.dmp --profile=Win7SP1x86 timeliner

友情链接  http://www.cnblogs.com/klionsec

http://www.cnblogs.com/l0cm

http://www.cnblogs.com/Anonyaptxxx

http://www.feiyusafe.cn

kali linux之取证的更多相关文章

  1. ApacheCN Kali Linux 译文集 20211020 更新

    Kali Linux 秘籍 中文版 第一章 安装和启动Kali 第二章 定制 Kali Linux 第三章 高级测试环境 第四章 信息收集 第五章 漏洞评估 第六章 漏洞利用 第七章 权限提升 第八章 ...

  2. Kali Linux的发展史,专为数字取证和渗透测试而设计

    Kali Linux拥有非常强大的网络功能,Kali Linux是一个Debian衍生的Linux发行版,专为数字取证和渗透测试而设计.它是由OffensiveSecurityLtd维护和资助,是由M ...

  3. Kali Linux 2.0配置并安装常用的工具

    Kali Linux 前身是著名渗透测试系统BackTrack ,是一个基于 Debian 的 Linux 发行版,包含很多安全和取证方面的相关工具. Kali Linux 2.0是基于Debian ...

  4. KALI LINUX WEB 渗透测试视频教程—第十九课-METASPLOIT基础

    原文链接:Kali Linux Web渗透测试视频教程—第十九课-metasploit基础 文/玄魂 目录 Kali Linux Web 渗透测试视频教程—第十九课-metasploit基础..... ...

  5. 安装Kali Linux操作系统Kali Linux无线网络渗透

    安装Kali Linux操作系统Kali Linux无线网络渗透 Kali Linux是一个基于Debian的Linux发行版,它的前身是BackTrack Linux发行版.在该操作系统中,自带了大 ...

  6. 玩转渗透神器Kali:Kali Linux作为主系统使用的正确姿势TIPS

    Kali Linux 前身是著名渗透测试系统BackTrack ,是一个基于 Debian 的 Linux 发行版,包含很多安全和取证方面的相关工具. 本文假设你在新装好的kali linux环境下… ...

  7. Kali linux渗透测试的艺术 思维导图

    Kali Linux是一个全面的渗透测试平台,其自带的高级工具可以用来识别.检测和利用目标网络中未被发现的漏洞.借助于Kali Linux,你可以根据已定义的业务目标和预定的测试计划,应用合适的测试方 ...

  8. Kali Linux 发布 2019.1 版

    Kali Linux 是一个基于 Debian 的发行版,关注于高级渗透测试和安全审计并搭载各种常用工具,由 Offensive Security 维护.后者是一个提供信息安全训练的公司. 该项目于日 ...

  9. kali linux安装教程及VMware Tool工具的安装

    一.Kali Linux在VMware下的安装 kali系统的简介 1.Kali Kali Linux是基于 Debian 的 Linux发行版,设计用于数字取证和渗透测试的操作系统.由Offensi ...

随机推荐

  1. java中getAttribute和getParameter的区别

    getAttribute表示从request范围取得设置的属性,必须要先setAttribute设置属性,才能通过getAttribute来取得,设置与取得的为Object对象类型 getParame ...

  2. Linux内存地址映射

    引言 看过原博主的一些文章,写得很好,虽然博主不提倡这种拿来主义,但我还是忍不住一时手痒.呵呵本文是针对32位x86 CPU中Linux内核地址映射过程的详细介绍和示例.其中由浅入深,介绍了相关寄存器 ...

  3. CLR如何控制类型中的字段排序

    [StructLayout(LayoutKind.Sequential) ]保持字段布局 [StructLayout(LayoutKind.Auto) ]CLR自动选择最优 [StructLayout ...

  4. x64位windows 2003 server中“Server 对象 错误 'ASP 0177 : 800700c1' Server.CreateObject 失败”问题

    给朋友看一个老asp网站图片不能上传问题,试过网上各种办法都提示: Server 对象 错误 'ASP 0177 : 800700c1' Server.CreateObject 失败 最终问题出在x6 ...

  5. python爬虫如何POST request payload形式的请求

    python爬虫如何POST request payload形式的请求1. 背景最近在爬取某个站点时,发现在POST数据时,使用的数据格式是request payload,有别于之前常见的 POST数 ...

  6. 手动制作CA证书

    一.安装 CFSSL 证书下载官方地址:https://pkg.cfssl.org #下面三个安装包,无需下载,之前百度云中的压缩包中都有[root@linux-node1 ~]# cd /usr/l ...

  7. VMWare 虚拟机挂载 Homestead NFS 进行老项目(基于 Brophp)维护

    环境: Laravel/homestead + winnfsd VMWare workstation 背景: 众所周知, windows 上成功配置 Homestead 进行开发时,为了解决文件系统的 ...

  8. hra 直线

    using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI ...

  9. Linux gcc支持的语法 __attribute__ 属性设置

    __attribute__实际上是gcc专有的一种语法,是用来设置函数属性.变量属性.类属性的 语法:之前在C中的结构体对齐中提到过,当时是用来告诉编译器这个结构体的对齐方式 ,其实他还有很多种用法, ...

  10. 用Swift实现一款天气预报APP(二)

    这个系列的目录: 用Swift实现一款天气预报APP(一) 用Swift实现一款天气预报APP(二) 用Swift实现一款天气预报APP(三) 上篇中主要讲了界面的一些内容,这篇主要讨论网络请求,获得 ...