• kali linux之取证


    取证简介:

    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 "SAMDomainsAccountUsersNames"

    最后登录的用户

    volatility -f win.dmp --profile=Win7SP1x86 printkey -K "SOFTWAREMicrosoftWindows NTCurrentVersionWinlogon

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

    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

  • 相关阅读:
    Jsoup系列学习(1)-发送get或post请求
    使用httpclient发送get或post请求
    charles 抓取eclipse中的请求
    springmvc学习资料整理
    springmvc和struts2的区别
    Linux常用命令
    Sql Server 2008R2 数据库发布与订阅
    jquery 父、子页面之间页面元素的获取,方法的调用
    封装ajax
    Maven 的安装配置
  • 原文地址:https://www.cnblogs.com/Hydraxx/p/10530212.html
Copyright © 2020-2023  润新知