绕过 Cloudflare 保护进行全站爬取——使用 Cyotek WebCopy + Fiddler

前言

Cloudflare作为一个CDN服务商,它最有存在感的时候(也是最令人反感的时候)就是浏览网站时蹦出它的DDoS保护页面了。一般情况下倒还好,顶多像下图中的页面一样,留人片刻。在某些特殊网络环境中,或进行一些特殊操作(比如本文中,我们准备搞的爬虫)时,Cloudflare会强制用户输入图形验证码,而且最近还从谷歌的reCaptcha切换到了自家的hCaptcha[1],原因是嫌reCaptcha要钱。更新之后,一些开源的Cloudflare反反爬虫方案[2][3][4]也全都凉了,其中NodeJS库[3:1]的作者直接表示弃更,把项目的Github仓库设置为归档模式了。

阅读更多

CodeQL漏洞挖掘实战

CodeQL是一个白盒源码审计工具,它以一种非常新颖的方式组织代码与元数据,使研究人员能够“像查询数据库一样检索代码”,并发现其中的安全问题。Github于去年收购了开发CodeQL的公司Semmel,并与其联合成立了Github Security Lab,Semmel在此前推出了面向开源社区和企业的源代码分析平台LGTM,这个平台能够自动化的发现并预警Github上开源软件的安全问题,同时,与CodeQL一样对开源社区与开发者保持免费。

本文将从CodeQL的基础知识出发,跟随Github Security Lab发布的互动式体验课程[1],带领读者认识CodeQL在代码审计中的实际应用——在特定版本的uboot源码中发现多个安全问题,通过一段CodeQL查询语句定位到9个CVE漏洞。

阅读更多

敏感文件读写预警——基于Windows Defender勒索软件防护功能

Windows系统自带杀软,Windows Defender中,包含了很多不为人知的功能。我们今天用到的勒索软件防护[1](也叫受控文件夹访问,Controlled Folder Access),就是一个非常有意义的小功能。这个功能在Windows 10、Windows Server 2019全系列可用,但只有在系统里没有安装其他杀毒软件时,才能够看到这个选项。

总体来说,这个功能做的事情就是对用户指定和系统预置的几个目录[2]进行监控,只允许白名单里的程序修改其内容,其他程序读文件不受限制,写文件时就会报错,同时Windows Defender会对非白名单程序的修改行为进行告警,在通知中心弹一个窗。可以当一个低配版的火绒剑用 😉

本文不教大家怎么开启这个功能,这个官方文档[3]都写过了,再写没意思。本文的目的主要有两个。

  1. 更详细的告警信息——弹窗的时候就说明白,哪个进程访问了哪个目录。默认的弹窗只说“Windows阻止了一次访问”,不告诉我们哪个进程,不告诉我们对哪个目录的操作。如果要看到详情,就要点到Defender的界面,点点点好几回,再确认好几次UAC弹框,体验极差。而且,Windows Server中不提醒!不提醒!不提醒!
  2. 更详细的告警历史——一个列表就能看到,哪个进程之前访问过哪个目录。Defender的界面里,点开每一条详情就需要点一个UAC弹框,很安全,但是体验还是极差!而且,查看历史记录这个功能只有Windows 10里有,Windows Server的Defender界面中连阻止历史记录这个菜单都没有!
  3. 到这里我们可以得出一个结论,我就是那个把Windows Server 2019装在日常电脑上的蠢B……

本文实现这两个目标的方式,是通过在Windows系统事件中,截获关于Windows Defender“受控文件夹访问”部分的告警事件,再通过PowerShell脚本将事件详情推送到桌面上,这样恶意进程的操作我们就能够实时看到了。

阅读更多

一次失败的迅雷 Mac 版破解尝试

新片 Ready Player One 看得我心痒痒,想去海盗湾下一波枪版过过瘾。一本正经的用 uTorrent 下了一会……这尼玛太慢了受不了。迅雷——启动!下载,开……嗯?会员试用?试用!哇。爽歪歪!——会员试用结束!呃,比 uT 还慢的我天。正好心痒痒想实战一下怎么写一个 hook ,就来吧。

阅读更多

扒尽手游的底裤——Cocos2dx与LuaJIT完全解密

嘿嘿嘿~在吾爱被加精了,毕竟是人生第一篇精华帖,庆祝一下~两天的夜没白熬😄
唔……今天早上又被吾爱官微推了一波,链接在这里

为了满足收集欲,想要拿下某个卡牌类游戏的所有立绘。在逆向的过程中,开拓了一些前人没有发掘的领域,无论是中文还是英文都没有相应的资料。本文证明了,即使Lua源码被编译过,也不是绝对的安全。厂商们打的小算盘可能是——没有成熟的工具,不好破解。但是对于了解原理的安全研究者,这不是问题。反而对于不了解原理,着重于快速开发复用代码的游戏开发者来说,没有成熟的防护体系,无论是自己造轮子还是用别人的轮子,造成的威胁都会更大。

由于不知道会有什么影响,担心会让抄袭之风来的更快,在此有选择性的隐去一些源码和细节,但是思路都在这里一点没有删减,权当自己的笔记和对游戏厂商的警醒。我们开始咯~

阅读更多

源码级解析安卓SELinux应用权限分配

在运用了上文的方法(好吧这个上文我还没发)将我的ROM用自己的证书签名以后,我遇到了一个奇怪的bug,开机载入完成后会显示“系统界面已停止运行”,点击“关闭应用”以后会无限循环报错。这里结合安卓7.1.1源码,小记一下因为SELinux导致的这个奇怪问题的解决思路。

阅读更多

Go二进制文件混淆保护

Go实在是太棒了。一处编译,处处运行,没有依赖,毫无麻烦!

不过麻烦的事情来了。我们写一个程序,就是想在别人的电脑上运行的。然而,Go语言的默认机制,会泄漏我们的一些信息,虽然不多,但也有点尴尬。本文结合网上的一些常用方法,总结出一套通用的简单易行的保护措施。

阅读更多

次世代校园网免流

补一下最近发现的校园网免流方法。回想 CDN 的白名单漏洞,那个代理的使用方式可是多种多样呀,有一阵子我还用它绕过校园Wi-Fi的AP隔离呢(哈哈哈),似乎也是从我这里扩散出去的呢(哈哈哈)。自从它修补之后,最近几乎没有什么划算的免流方式可以少交那十几块钱了。这个代理虽然也支持http CONNECT,但使用方式很苛刻,随意开火吧。

简单讲一下发现过程和利用方式。

阅读更多