Python取证-网络取证

Python取证-网络取证

现代网络环境的情况是这样的,由于一些困难,调查可能是充满困难的。这可能发生在你对漏洞支持的反应,调查内部活动,执行与漏洞有关的评估,或验证监管合规性。

网络编程的概念

以下是网络编程中使用的定义。

  • 客户端 – 客户端是网络编程的客户-服务器结构的一部分,它在个人计算机和工作站上运行。

  • 服务器 – 服务器是客户端-服务器架构的一部分,为同一台或其他计算机中的其他计算机程序提供服务。

  • WebSockets – WebSockets在客户端和服务器之间提供了一个协议,该协议通过一个持久的TCP连接运行。通过它,TCP套接字连接之间可以发送双向信息(同时)。

WebSockets是在许多其他技术之后出现的,这些技术允许服务器向客户端发送信息。 除了握手升级头之外,WebSockets是独立于HTTP的。

Python取证--网络取证

这些协议被用来验证由第三方用户发送或接收的信息。由于加密是用于确保信息安全的方法之一,确保信息传输渠道的安全也很重要。

考虑以下Python程序,客户端使用该程序进行 握手。

例子

# client.py
import socket

# create a socket object
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# get local machine name
host = socket.gethostname()
port = 8080

# connection to hostname on the port.
s.connect((host, port))

# Receive no more than 1024 bytes
tm = s.recv(1024)
print("The client is waiting for connection")
s.close()

输出

它将产生以下输出 –

Python取证--网络取证

接受通信通道请求的服务器将包括以下脚本。

# server.py
import socket
import time

# create a socket object
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# get local machine name 
host = socket.gethostname()
port = 8080

# bind to the port
serversocket.bind((host, port))

# queue up to 5 requests 
serversocket.listen(5)

while True:
   # establish a connection 
   clientsocket,addr = serversocket.accept()
   print("Got a connection from %s" % str(addr))
   currentTime = time.ctime(time.time()) + "\r\n"
   clientsocket.send(currentTime.encode('ascii'))
   clientsocket.close()

在Python编程的帮助下创建的客户端和服务器听取主机号码。最初,客户端向服务器发送与主机号码中发送的数据有关的请求,服务器接受请求并立即发送响应。这样,我们就可以有一个安全的通信渠道。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程