使用 Appium 进行安卓应用自动化“爬虫”

最近在做微信公众号采集的时候,延申出来一个需求,我要对公众号进行批量采集的话,势必需要先获取我自己关注的公众号列表,后面的自动化已经非常完整,所以只需要获取所有公众号的中文名称,整个流程就打通了。但问题来了,中文名称也不好搞哇。要不我手动一个一个输?列表拉下来一看,嗬,346个。我掐指一算,10秒一个,我得机械的在那儿打打打打字一个小时。不行不行,太要命了。

那就找找自动化的方法?微信现在PC端、移动端的接口都是铁板一块,像我这种工具小子,开个Fiddler毛都抓不到,毕竟人家也没用HTTP去通信。从通信角度肯定没办法了。一般这个时候我会想到Frida/Xposed,但现在的目标是微信,之前因为插件已经封过一个号了,需要获取数据的又是大号,不敢造次。因此只能去调研一下其他非侵入式的方法了。找来找去,在UI上做文章最为保险,本文就简单讲一下,如何利用应用自动化测试框架 Appium [1],在非root环境的情况下获取任意安卓App界面上任意数据。

阅读更多

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

前言

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

阅读更多

敏感文件读写预警——基于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脚本将事件详情推送到桌面上,这样恶意进程的操作我们就能够实时看到了。

阅读更多

如何优雅地撰写博客公众号

第一篇文章。好紧张。记录一下,怎么让写文章更舒适~

写博客,容易……吗?

为了激励自己多写一点东西,想将博客同步到刚刚申请的公众号上,这样也能为文字多带来一些曝光的机会。培养写作的习惯本已不易,一套方便趁手的工具链更是尤为重要。开始做了一些调研,发现要想输出一个带格式的文章,没有想象中的那么简单。尤其是看到很多人吐槽知乎编辑器难用,所以也特意看了看文章能不能也弄到知乎。最后总结一套还算舒服的写作工具,顺带讲讲整个流程。

阅读更多

V2Ray 免翻接收谷歌 FCM 推送

从维修点回来的一加,脸上布满着岁月的痕迹,身体也一天不如一天了。打开电池使用情况,耗电大家除了手机屏幕谷歌服务就是想删又不能删的超级费电宇宙无敌旋转爆炸垃圾手机QQ。

绿色守护过来!给我拖出去!

好了。现在问题来了。怎么收消息呢?

我们都知道第三方 QQ 推送有两种方案,一个是据说支持Nougat通知特性、利用谷歌 Firebase 推送消息的 FCM-For-Mojo ,还有一个就是用老版 GCM 但是同时支持华为、小米等国产推送 SDK 的 GcmForMojo (这项目连个README都没有?!)

纠结了一秒作为颜控当然选界面好看的啦

那么问题又来了。我总不能上个Q还要成天到晚挂梯子吧?——我要把这个解决了的话,还有一个好处,其他使用 FCM Push 的软件可以一同受益,Qng内生活就会很轻松了。

网上教程传统的思路都会告诉你,装个haproxy呀,装个nginx呀,你得有个国外VPS呀,巴拉巴拉巴……不过为了个QQ没必要搞这么多幺蛾子,而且好线路的VPS是真的贵。鉴于我的机器都是国内的且有备案,使用成本反而更低。所以在国内架一个 MojoQQ 服务,并让他同时作为 FCM 服务端与安卓 FCM 客户端的反向代理,大概是最好的选择了。

阅读更多

OpenWRT/LEDE 开启免 NAT 全局 IPv6

为了一个IPv6已经不知道折腾了几宿。今天终于完全搞定了,IPv6本来就不应该有什么NAT6或者radvd转发之类的奇技淫巧,但是作为基础设施,稳定是第一要素。因为软件实现的bug导致网络不稳定,真的是为了新技术得不偿失。

不过还是得说,IPv6这种东西最好还是赶紧学学。毕竟上面翻了牌子。而且摆脱 NAT 的纠缠将为以后的入侵渗透提供很多便利,更不用提以后是物联网的天下,看门狗的世界成为现实也不一定呢 😊

契机当然是国x院的通知,突破是LEDE分支odhcpd对bug的修复[1]。当然还有某些玩家的黑科技修复方法[2]。现在已经达到开机连接完全可用的状态了,也不用开机重启network或者重启odhcpd了。下面说说方法。

阅读更多

次世代校园网免流

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

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

阅读更多

碎屏手机改造移动路由

换了手机后,想专门配一个大流量的上网卡,良心联通15G/50元,但新办上网卡只有micro卡,而且新手机卡槽已然满了,一个4G卡托要一百多,还要插我那个电池垃圾不行的移动路由……怎么说我那破手机还是一个卡槽全网通啊!(而且心疼钱。)想想用这破手机实现也不难,无非是开机打开热点而已了。

开始从固件上入手,不过垃圾国行特供版少有开源固件,还要熟悉安卓启动机制,卒。转而寻求软件实现。发现也不难,从商店里下了几个热门的安卓自动化软件,简单说一下自己的体验。

在这之前,要先恢复手机到最佳状态。格掉吧!

阅读更多

ssh 常用连接方式总结

欠了四个周更。先随便更新一个。这三周搞Kali Nethunter的移植,就是余弦口中的“黑客手机”[斜眼],踩了太多坑。写成文章绝壁能把欠的周更补全……

回归正题。说实话关于ssh的高级用法,网上的教程不能更多,不过遗憾的是, 他们理科生 的思维我真的理解不能,比如对于本地转发和远程转发的区别,我每次用到转发都要谷歌一个教程,每次都要看半天,很讨厌的真是。这篇文章想将重点从ssh的各种命令、参数上移开,将视角聚焦在具体的网络环境中,讨论在不同的 恶劣 网络环境中如何轻松自由的使用ssh这一强大的工具连接任意主机。

阅读更多