Python Forensics - Ảo hóa

Virtualizationlà quá trình mô phỏng các hệ thống CNTT như máy chủ, máy trạm, mạng và lưu trữ. Nó không là gì khác ngoài việc tạo ra một phiên bản ảo chứ không phải thực của bất kỳ hệ điều hành, máy chủ, thiết bị lưu trữ hoặc quy trình mạng nào.

Thành phần chính giúp mô phỏng phần cứng ảo được định nghĩa là hyper-visor.

Hình sau giải thích hai loại ảo hóa hệ thống chính được sử dụng.

Ảo hóa đã được sử dụng trong pháp y tính toán theo một số cách. Nó giúp nhà phân tích theo cách mà máy trạm có thể được sử dụng ở trạng thái xác thực cho mỗi cuộc điều tra. Có thể khôi phục dữ liệu bằng cách đính kèm hình ảnh dd của ổ đĩa làm ổ đĩa thứ cấp trên máy ảo. Máy tương tự có thể được sử dụng làm phần mềm khôi phục để thu thập bằng chứng.

Ví dụ sau giúp bạn hiểu việc tạo một máy ảo với sự trợ giúp của ngôn ngữ lập trình Python.

Step 1 - Đặt tên máy ảo là 'dummy1'.

Mỗi máy ảo phải có 512 MB bộ nhớ trong dung lượng tối thiểu, tính bằng byte.

vm_memory = 512 * 1024 * 1024

Step 2 - Máy ảo phải được gắn vào cluster mặc định, đã được tính toán.

vm_cluster = api.clusters.get(name = "Default")

Step 3 - Máy ảo phải khởi động từ ổ đĩa cứng ảo.

vm_os = params.OperatingSystem(boot = [params.Boot(dev = "hd")])

Tất cả các tùy chọn được kết hợp thành một đối tượng tham số máy ảo, trước khi sử dụng phương thức thêm của bộ sưu tập vms vào máy ảo.

Thí dụ

Sau đây là tập lệnh Python hoàn chỉnh để thêm một máy ảo.

from ovirtsdk.api import API #importing API library
from ovirtsdk.xml import params

try: #Api credentials is required for virtual machine
   api = API(url = "https://HOST", 
      username = "Radhika", 
      password = "a@123", 
      ca_file = "ca.crt")
      
   vm_name = "dummy1"
   vm_memory = 512 * 1024 * 1024 #calculating the memory in bytes
   vm_cluster = api.clusters.get(name = "Default")
   vm_template = api.templates.get(name = "Blank")
   
   #assigning the parameters to operating system
   vm_os = params.OperatingSystem(boot = [params.Boot(dev = "hd")])
   
   vm_params = params.VM(name = vm_name,
      memory = vm_memory,
      cluster = vm_cluster,
      template = vm_template
      os = vm_os)

   try: 
      api.vms.add(vm = vm_params) 
      print "Virtual machine '%s' added." % vm_name #output if it is successful. 
   except Exception as ex: 
      print "Adding virtual machine '%s' failed: %s" % (vm_name, ex) 
      api.disconnect()
      
except Exception as ex: 
   print "Unexpected error: %s" % ex

Đầu ra

Mã của chúng tôi sẽ tạo ra kết quả sau: