BroadcastChannel
https://channel.gandli.eu.org/
https://channel.gandli.eu.org/
最糟糕的情况是,一个不懂编程的人使用 AI,编写出了一个需要长期维护的大型项目。这就好比把信用卡交给不懂事的孩子。
一旦代码出问题,如果你不理解代码,就只能让 AI 为你修复,这就像用一张信用卡偿还另一张信用卡的债务。
-- 《氛围编程是技术债》[57]
一旦代码出问题,如果你不理解代码,就只能让 AI 为你修复,这就像用一张信用卡偿还另一张信用卡的债务。
-- 《氛围编程是技术债》[57]
并在其置顶视频评论中声称:
只有 bandwagonhost.com 和 bwh81.net 是搬瓦工唯一官方网站
而 bwh89.net 、 bwh88.net 、 bwh1.net 是 “恶意镜像”
同时用 SSL 证书的颁发机构 来判断是否为钓鱼网站?
————
————
我们可以使用 Google 提供的工具查询域名的 NS 记录:
将以上域名输入查询后,你将会发现它们的 NS 记录均为:
vita.ns.cloudflare.com.
lloyd.ns.cloudflare.com.翻译成小白能听懂的话就是:这些域名都绑定在同一个 Cloudflare 账号下!
——
“知识噪音” 用证书颁发机构来判断钓鱼与否,这种判断方式是 不严谨 的。
Cloudflare 在你没有特别指定的情况下,会 随机分配 以下几家中的任意一个证书颁发机构:
- DigiCert
- Google Trust Services
- Let's Encrypt
正好我博客也有给CF托管域名切换证书颁发机构的教程,有需要的可以自行实践:
——
有人可能会说:"NS 记录我自己可以随便设置,伪装一下不就行了?"
虽然你可以随便改 NS,但 如果不绑定 CF 指定的 NS,Cloudflare 就不会为该域名提供解析和 CDN 服务。
另外,Cloudflare 同一个账号确实有可能分配不同 NS记录,
但不可能出现两个完全不同账号使用同一组 NS 的情况,这点是可以作为判断线索的。
——
bandwagonhost.com 、 bwh81.net 、 bwh89.net 、 bwh88.net 、 bwh1.net 这几个域名都绑定在同一个Cloudflare账号下,都是 同一个主体在使用这些域名。
来源:BleepingComputer
Clash Verge 客户端再曝新问题,存在远程代码执行漏洞
继此前有关于 Clash Verge Rev 存在提权漏洞的消息后,更多的问题浮出水面。GitHub 用户 ddddhm1234 对新版本(v2.2.4 alpha)的分析发现,用户使用默认配置的Clash Verge时,访问一个恶意网页即可触发本地文件写入攻击,进一步利用各种软件的插件加载机制,即可将文件写入扩展至RCE漏洞。
该漏洞的核心成因在于Clash Verge Rev的默认配置。在其默认设置下,客户端会在本地(127.0.0.1:9097)开启一个未经验证的API服务接口,并且该接口存在跨域资源共享(CORS)配置问题。当用户运行着默认配置的Clash Verge Rev并访问一个恶意网页时,该网站上的代码可以直接与本地的Clash Verge Rev API进行通信。
攻击者可利用此API接口修改Clash核心(Mihomo)的配置文件,并通过配置文件中的特定字段绕过路径检查,实现本地文件写入。本地文件写入后,即可通过利用常见软件的插件机制,通过部署恶意插件,实现后阶段的RCE。
Clash Verge 用户应当立即修改设置,为外部控制添加密码验证。
[消息等级 Level C2 · 简要]
继此前有关于 Clash Verge Rev 存在提权漏洞的消息后,更多的问题浮出水面。GitHub 用户 ddddhm1234 对新版本(v2.2.4 alpha)的分析发现,用户使用默认配置的Clash Verge时,访问一个恶意网页即可触发本地文件写入攻击,进一步利用各种软件的插件加载机制,即可将文件写入扩展至RCE漏洞。
该漏洞的核心成因在于Clash Verge Rev的默认配置。在其默认设置下,客户端会在本地(127.0.0.1:9097)开启一个未经验证的API服务接口,并且该接口存在跨域资源共享(CORS)配置问题。当用户运行着默认配置的Clash Verge Rev并访问一个恶意网页时,该网站上的代码可以直接与本地的Clash Verge Rev API进行通信。
攻击者可利用此API接口修改Clash核心(Mihomo)的配置文件,并通过配置文件中的特定字段绕过路径检查,实现本地文件写入。本地文件写入后,即可通过利用常见软件的插件机制,通过部署恶意插件,实现后阶段的RCE。
Clash Verge 用户应当立即修改设置,为外部控制添加密码验证。
[消息等级 Level C2 · 简要]
SQL 注入观测实验总结
实验概述
本文详细介绍了如何搭建SQL注入观测环境,通过设置服务器和数据库日志来观察SQL注入攻击的全过程。
实验步骤详解
1. 环境搭建
• 拉取并启动sqli-lab容器:
启动后可通过http://localhost访问
• 安装数据库:
访问http://localhost/sql-connections/setup-db.php安装SQL注入实验数据库
• 访问注入实验页面:
访问http://localhost/Less-1/进入SQL注入实验页面
2. 基础SQL查询测试
• 尝试访问http://localhost/Less-1/?id=1
• 页面会发起SQL查询并展示相应内容
3. 日志设置与观测
• 进入容器:
• 查看Apache访问日志:
• 配置MySQL日志:
1. 进入MySQL:
2. 开启通用查询日志:
• 查看MySQL日志:
4. SQL注入测试
• 使用sqlmap进行注入测试:
成功执行后可获取数据库中的数据
• 实时观测注入过程:
通过同时查看Apache访问日志和MySQL查询日志,可以清晰观察到:
• 攻击如何通过id参数注入
• 恶意SQL查询如何在数据库中执行
实验价值
该实验完整展示了:
1. SQL注入漏洞环境的搭建方法
2. 服务器和数据库日志的配置方式
3. SQL注入攻击的实际执行过程
4. 如何通过日志分析攻击行为
通过此实验,可以深入理解SQL注入的攻击原理和防御重要性。
实验概述
本文详细介绍了如何搭建SQL注入观测环境,通过设置服务器和数据库日志来观察SQL注入攻击的全过程。
实验步骤详解
1. 环境搭建
• 拉取并启动sqli-lab容器:
docker run -dt --name sqli-lab -p 80:80 acgpiano/sqli-labs:latest
启动后可通过http://localhost访问
• 安装数据库:
访问http://localhost/sql-connections/setup-db.php安装SQL注入实验数据库
• 访问注入实验页面:
访问http://localhost/Less-1/进入SQL注入实验页面
2. 基础SQL查询测试
• 尝试访问http://localhost/Less-1/?id=1
• 页面会发起SQL查询并展示相应内容
3. 日志设置与观测
• 进入容器:
docker exec -it sqli-lab bash
• 查看Apache访问日志:
tail -f /var/log/apache2/access.log
• 配置MySQL日志:
1. 进入MySQL:
mysql -u root
2. 开启通用查询日志:
SET global general_log = 1;
SET global log_output = 'FILE';
SET global general_log_file = '/var/lib/mysql/general.log';
SHOW VARIABLES LIKE 'general_log%';
• 查看MySQL日志:
tail -f /var/lib/mysql/general.log
4. SQL注入测试
• 使用sqlmap进行注入测试:
sqlmap -u http://localhost/Less-1?id=1 --dump --batch
成功执行后可获取数据库中的数据
• 实时观测注入过程:
通过同时查看Apache访问日志和MySQL查询日志,可以清晰观察到:
• 攻击如何通过id参数注入
• 恶意SQL查询如何在数据库中执行
实验价值
该实验完整展示了:
1. SQL注入漏洞环境的搭建方法
2. 服务器和数据库日志的配置方式
3. SQL注入攻击的实际执行过程
4. 如何通过日志分析攻击行为
通过此实验,可以深入理解SQL注入的攻击原理和防御重要性。
# 使用Swift构建Wasm应用指南
本文详细介绍了如何使用Swift语言开发WebAssembly(Wasm)应用,这是Swift进军前端开发领域的重要一步。
## 核心要点
### 1. Swift与Wasm的结合优势
- 性能表现:Swift编译为Wasm后性能接近原生
- 代码复用:可共享iOS/macOS后端逻辑
- 开发体验:使用熟悉的Swift语法进行Web开发
### 2. 开发环境搭建
### 3. 项目创建与构建
### 4. 关键开发技巧
- DOM操作:通过JavaScriptKit桥接
- 内存管理:注意Swift与JS间的数据传递
- 性能优化:减少跨语言调用
## 完整开发流程
1. 初始化项目:使用SwiftPM创建项目结构
2. 编写核心逻辑:用Swift实现业务代码
3. 前端集成:通过JS接口与DOM交互
4. 构建发布:编译为.wasm文件并部署
## 实际应用案例
文中展示了如何构建一个简单的计数器应用:
- 使用Swift实现计数逻辑
- 通过JS绑定更新DOM
- 最终编译为单个.wasm文件
## 注意事项
1. 工具链成熟度:SwiftWasm仍处于活跃开发阶段
2. 生态系统:部分Swift库可能不兼容
3. 调试难度:Wasm调试工具仍在完善
## 未来展望
随着SwiftWasm项目的推进,Swift有望成为全栈开发语言,实现真正的代码跨平台共享。
如需了解完整代码示例和详细配置说明,建议访问原文链接获取第一手资料。
本文详细介绍了如何使用Swift语言开发WebAssembly(Wasm)应用,这是Swift进军前端开发领域的重要一步。
## 核心要点
### 1. Swift与Wasm的结合优势
- 性能表现:Swift编译为Wasm后性能接近原生
- 代码复用:可共享iOS/macOS后端逻辑
- 开发体验:使用熟悉的Swift语法进行Web开发
### 2. 开发环境搭建
# 安装必备工具链
brew install swiftwasm/tap/swiftwasm
# 验证安装
swift --version
### 3. 项目创建与构建
// 创建新项目
swift package init --type executable
// 修改Package.swift
targets: [
.executableTarget(
name: "YourApp",
linkerSettings: [
.unsafeFlags(["-Xlinker", "--export=main"])
]
)
]
### 4. 关键开发技巧
- DOM操作:通过JavaScriptKit桥接
- 内存管理:注意Swift与JS间的数据传递
- 性能优化:减少跨语言调用
## 完整开发流程
1. 初始化项目:使用SwiftPM创建项目结构
2. 编写核心逻辑:用Swift实现业务代码
3. 前端集成:通过JS接口与DOM交互
4. 构建发布:编译为.wasm文件并部署
## 实际应用案例
文中展示了如何构建一个简单的计数器应用:
- 使用Swift实现计数逻辑
- 通过JS绑定更新DOM
- 最终编译为单个.wasm文件
## 注意事项
1. 工具链成熟度:SwiftWasm仍处于活跃开发阶段
2. 生态系统:部分Swift库可能不兼容
3. 调试难度:Wasm调试工具仍在完善
## 未来展望
随着SwiftWasm项目的推进,Swift有望成为全栈开发语言,实现真正的代码跨平台共享。
如需了解完整代码示例和详细配置说明,建议访问原文链接获取第一手资料。
# Linux系统修复利器:chroot技术详解
## 一、chroot技术原理
### 1. 基本概念
- 将指定目录设置为进程的"新根目录"(/)
- 限制进程只能访问该目录及其子目录下的文件
- 创建一个隔离的文件系统环境
### 2. 工作原理
当执行
1. 内核修改进程的根目录指针
2. 所有绝对路径的访问都被限制在新根目录下
3. 进程无法访问或看到真实根目录以外的文件
## 二、chroot的主要应用场景
### 1. 系统修复
- 修复损坏的GRUB引导
- 恢复误删的系统文件
- 修复损坏的软件包
### 2. 安全隔离
- 运行不可信程序
- 构建沙盒环境
- 限制服务访问范围
### 3. 特殊环境搭建
- 测试不同Linux发行版
- 构建交叉编译环境
- 运行旧版软件
## 三、chroot使用实战
### 1. 基本使用方法
### 2. 使用debootstrap创建完整环境(Debian/Ubuntu)
### 3. 系统修复实例
## 四、chroot的局限性及注意事项
### 1. 安全性限制
- 不是完整的沙盒解决方案
- 进程仍可访问系统资源和硬件
- 需要配合其他安全措施使用
### 2. 常见问题解决
- 缺少命令:确保复制了所有依赖的二进制文件和库
- 设备不可用:挂载/dev目录
- 网络不可用:复制/etc/resolv.conf文件
### 3. 现代替代方案
- 容器技术:Docker、LXC等
- 虚拟机:KVM、VirtualBox等
- 命名空间:unshare命令
## 五、高级技巧
### 1. 自动化脚本
### 2. 使用systemd-nspawn
### 3. 持久化chroot环境
## 总结
chroot是Linux系统管理员和开发人员工具箱中不可或缺的工具,特别适合系统修复和环境隔离场景。虽然它不能提供容器那样的完整隔离,但其简单性和低开销使其在很多情况下仍然是首选解决方案。掌握chroot技术将大大提升你在Linux系统管理方面的能力。
chroot是Linux系统中一项强大而实用的技术,它通过改变进程的根目录来实现环境隔离,在系统修复、安全测试和特殊环境搭建等方面发挥着重要作用。下面我们将全面解析这项技术的原理、应用场景和具体操作方法。## 一、chroot技术原理
### 1. 基本概念
chroot(Change Root)是Unix/Linux系统的一个系统调用,它能够:- 将指定目录设置为进程的"新根目录"(/)
- 限制进程只能访问该目录及其子目录下的文件
- 创建一个隔离的文件系统环境
### 2. 工作原理
当执行
chroot命令时:1. 内核修改进程的根目录指针
2. 所有绝对路径的访问都被限制在新根目录下
3. 进程无法访问或看到真实根目录以外的文件
## 二、chroot的主要应用场景
### 1. 系统修复
- 修复损坏的GRUB引导
- 恢复误删的系统文件
- 修复损坏的软件包
### 2. 安全隔离
- 运行不可信程序
- 构建沙盒环境
- 限制服务访问范围
### 3. 特殊环境搭建
- 测试不同Linux发行版
- 构建交叉编译环境
- 运行旧版软件
## 三、chroot使用实战
### 1. 基本使用方法
# 创建chroot环境目录
mkdir -p /mnt/chroot_env
# 复制必要文件
for i in bin lib lib64 usr etc; do
cp -r /$i /mnt/chroot_env/
done
# 进入chroot环境
chroot /mnt/chroot_env /bin/bash
### 2. 使用debootstrap创建完整环境(Debian/Ubuntu)
# 安装工具
apt-get install debootstrap
# 创建基础系统
debootstrap stable /mnt/chroot_env http://deb.debian.org/debian
# 进入环境
chroot /mnt/chroot_env
### 3. 系统修复实例
# 挂载损坏的系统分区
mount /dev/sda1 /mnt/broken_system
# 挂载必要的虚拟文件系统
mount --bind /proc /mnt/broken_system/proc
mount --bind /dev /mnt/broken_system/dev
mount --bind /sys /mnt/broken_system/sys
# 进入修复环境
chroot /mnt/broken_system
# 执行修复操作(如重装GRUB)
grub-install /dev/sda
update-grub
## 四、chroot的局限性及注意事项
### 1. 安全性限制
- 不是完整的沙盒解决方案
- 进程仍可访问系统资源和硬件
- 需要配合其他安全措施使用
### 2. 常见问题解决
- 缺少命令:确保复制了所有依赖的二进制文件和库
- 设备不可用:挂载/dev目录
- 网络不可用:复制/etc/resolv.conf文件
### 3. 现代替代方案
- 容器技术:Docker、LXC等
- 虚拟机:KVM、VirtualBox等
- 命名空间:unshare命令
## 五、高级技巧
### 1. 自动化脚本
#!/bin/bash
CHROOT_DIR="/mnt/chroot_env"
# 创建基本目录结构
mkdir -p ${CHROOT_DIR}/{bin,lib,lib64,usr,etc}
# 复制最小化系统文件
cp /bin/{bash,ls,cat} ${CHROOT_DIR}/bin/
cp /lib64/ld-linux-x86-64.so.2 ${CHROOT_DIR}/lib64/
cp /lib/x86_64-linux-gnu/{libc.so.6,libselinux.so.1} ${CHROOT_DIR}/lib/
### 2. 使用systemd-nspawn
# 创建更完善的隔离环境
systemd-nspawn -D /mnt/chroot_env
### 3. 持久化chroot环境
# 创建压缩包备份
tar -czvf chroot_env.tar.gz -C /mnt/chroot_env .
# 恢复环境
tar -xzvf chroot_env.tar.gz -C /mnt/new_chroot_env
## 总结
chroot是Linux系统管理员和开发人员工具箱中不可或缺的工具,特别适合系统修复和环境隔离场景。虽然它不能提供容器那样的完整隔离,但其简单性和低开销使其在很多情况下仍然是首选解决方案。掌握chroot技术将大大提升你在Linux系统管理方面的能力。
SSH反向代理是一种实用的技术,可以解决国内服务器访问GitHub或Docker镜像时遇到的网络限制问题。通过以下一行命令实现:
这里的原理是:
1. 在本地电脑上运行一个代理服务,监听端口7890。
2. 通过SSH建立一个加密隧道,将远程服务器的请求通过这个隧道转发到本地。
3. 本地代理服务接收请求,处理后将结果返回给远程服务器。
在服务器上,你需要设置代理环境变量,例如:
这样,你的服务器就可以通过本地代理访问全球的资源,避免了网络超时或下载失败的困扰。这个技巧极大地提高了开发和部署的效率。
ssh -R 7890:localhost:7890 user@remote-server
这里的原理是:
1. 在本地电脑上运行一个代理服务,监听端口7890。
2. 通过SSH建立一个加密隧道,将远程服务器的请求通过这个隧道转发到本地。
3. 本地代理服务接收请求,处理后将结果返回给远程服务器。
在服务器上,你需要设置代理环境变量,例如:
export HTTPS_PROXY=http://127.0.0.1:7890
export HTTP_PROXY=http://127.0.0.1:7890
export ALL_PROXY=socks5://127.0.0.1:7890
这样,你的服务器就可以通过本地代理访问全球的资源,避免了网络超时或下载失败的困扰。这个技巧极大地提高了开发和部署的效率。
开发一套针对Telegram平台的涉烟违法信息智能监测系统,通过自动化采集指定频道/群组的文本、图片及交易信息,结合NLP语义分析与图像识别技术,识别走私烟、假烟销售、非法代购等违法内容,建立多维度特征库(关键词库、图片指纹库、支付账号特征),实现违法信息实时告警、传播路径溯源和地下交易网络图谱构建,最终形成包含时空热力图、关系拓扑图、资金流向图的可视化监管大屏,为烟草稽查部门提供线索发现、证据固定及团伙打击的数字化工具,系统需具备隐蔽数据采集、暗语动态解析、GDPR合规脱敏及司法存证功能。
开发网络安全信息聚合Web应用旨在通过整合X平台、安全厂商网站、RSS订阅及漏洞数据库等多源信息,构建实时威胁情报中枢,实现跨平台(桌面/移动)的智能化安全资讯管理。系统基于微服务架构,采用自适应爬虫采集数据,通过NLP技术自动分类威胁等级(如高危漏洞、APT攻击),支持用户自定义订阅规则(行业/资产/CVSS评分)和多级预警推送(Telegram/邮件/Webhook),同时提供交互式威胁图谱可视化和移动端PWA渐进式应用体验,具备GDPR合规数据处理、动态反爬策略和弹性扩展能力,为安全从业者提供实时、精准、可定制的威胁情报决策支持。