Python取证 - Python概述

用Python编写的代码看起来与用其他传统编程语言(如C或Pascal)编写的代码非常相似.还有人说,Python的语法是从C语言中大量借用的.这包括许多类似于C语言的Python关键字.

Python包括条件语句和循环语句,可以是用于准确提取数据以进行取证.对于流控制,它提供 if/else while ,以及循环在任何"可迭代"对象上的高级 for 语句.

if a < b: 
   max = b 
else: 
   max = a

Python与其他编程语言不同的主要区域是在使用动态类型.它使用引用对象的变量名称.这些变量不需要声明.

数据类型

Python包含一组内置数据类型,如字符串,布尔值,数字等还有一些不可变类型,这意味着在执行过程中无法更改的值.

Python也有复合内置数据类型,包括元组是不可变数组,列表字典,它们是哈希表.所有这些都用于数字取证,以便在收集证据时存储值.

第三方模块和包

Python支持模块组和/或者也称为第三方模块的包(用于组织程序的相关代码组合在一起).

Python包含一个广泛的标准库,这是其在计算取证中流行的主要原因之一.

Python代码的生命周期

  • 首先,当您执行Python代码时,解释器会检查代码是否存在语法错误.如果解释器发现任何语法错误,则它们会立即显示为错误消息.

  • 如果没有语法错误,则编译代码以生成字节码并发送到PVM(Python虚拟机).

  • PVM检查字节码是否存在任何运行时或逻辑错误.如果PVM发现任何运行时错误,则立即将它们报告为错误消息.

  • 如果字节码没有错误,则代码将被处理并且你得到它的输出.

下图以图形方式显示了如何首先解释Python代码以产生字节码以及如何字节码由PVM处理以产生输出.

Python Code Life Cycle