- Python 取证教程
- 家
- 介绍
- Python的安装
- Python概述
- 基本法医应用
- 哈希函数
- 破解加密
- 虚拟化
- 网络取证
- Python 模块
- Dshell 和 Scapy
- 搜寻中
- 索引
- Python 图像库
- 移动取证
- 网络时间协议
- 多处理支持
- 记忆与取证
- Linux 中的取证
- 妥协指标
- 云实施
- Python 取证有用资源
- Python 取证 - 快速指南
- Python 取证 - 有用的资源
- Python 取证 - 讨论
Python 取证 - 网络取证
现代网络环境的情况使得调查可能由于许多困难而充满困难。无论您是在响应违规支持、调查内部活动、执行与漏洞相关的评估还是验证监管合规性,都可能发生这种情况。
网络编程的概念
网络编程中使用以下定义。
客户端- 客户端是网络编程的客户端-服务器架构的一部分,运行在个人计算机和工作站上。
服务器- 服务器是客户端-服务器体系结构的一部分,为同一台或其他计算机中的其他计算机程序提供服务。
WebSockets - WebSockets 提供客户端和服务器之间的协议,该协议在持久的 TCP 连接上运行。通过这种方式,可以在 TCP 套接字连接之间(同时)发送双向消息。
WebSocket 是继许多其他允许服务器向客户端发送信息的技术之后出现的。除了握手升级标头之外,WebSockets 独立于 HTTP。
这些协议用于验证第三方用户发送或接收的信息。由于加密是用于保护消息安全的方法之一,因此保护消息传输通道的安全也很重要。
考虑以下 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()
输出
它将产生以下输出 -
接受通信通道请求的服务器将包含以下脚本。
# 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编程创建的客户端和服务器监听主机号。最初,客户端向服务器发送关于主机号中发送的数据的请求,服务器接受该请求并立即发送响应。这样,我们就可以拥有安全的沟通渠道。