Windows 10下Frida无法通过USB连接iOS设备解决方法

前几年的某个时间点,大概是在Windows的某次更新后,或者iTunes上架Microsoft Store那段时间,Frida无法通过USB访问iOS设备,而iTunes、libimobiledevice、PP助手等则不受影响。之前尝试了各种组合,包括使用Microsoft Store和独立安装的iTunes,均未能解决。简单看了一下代码,没有发现处理不当的地方。只好在遇到iOS任务时更换MacBook Pro或者Ubuntu。在Frida的Issues也有相关的讨论,参考这里这里

今天在处理某个任务的时候,无意中发现一台Windows 10 LTSC上,Frida能够正常通过USB连接iOS设备,iTunes是独立安装包。简单分析和尝试后,以下方法可解决无法找到设备的问题:

  1. 如果从Microsoft Store中安装了iTunes,卸载之;
  2. 连接iOS设备,从设备管理器中删除设备,并勾选删除驱动;
  3. 下载iTunes安装包;
  4. 拔掉iOS设备,重启,断网安装iTunes;
  5. 启动iTunes,插上iOS设备,运行Frida进行测试。

上述方法在两台Windows 10 Pro上测试通过。 More

iOS越狱后Cydia联网记录

在工信部发布《移动智能终端应用软件预置和分发管理暂行规定》之后,从iOS 10的某个更新开始,国行手机在安装新应用后,默认情况下不会拥有网络连接权限,必须由用户手动设置后,才能访问WLAN或者移动网络。

这功能怎么说,略显鸡肋和脱离实际。Android应用可以很好的规避,如APK安装时有相关的提示,国内市场也可以在页面上进行权限的标注,然后静默安装。所以,对于原本应该规范的Android并没有受到影响,反而是相对可靠的iOS手机(国行),变得十分多余。

受到显著影响的,则是越狱后的Cydia、Sileo及其他越狱后安装的程序。虽然有帖子表示会有一定概率能够让系统自动弹出联网权限提示,但我从来没遇到过。通过参考各种帖子和实践,目前可用的方法大概有如下几种。 More

Ryzen 7 3700x上车小记

从CES 2019发布锐龙3代 处理器开始,一直关注相关的消息。在还没发发售前,通过各项数据及跑分显示,锐龙3代的性价比很高。正式发售后,通过极客湾和Linus Tech Tips了解3700x的真实上机表现后,趁着京东还在预售返利,立马入了一块3700x。

因为锐龙3代依然使用AM4接口,大部分AMD 300 & 400芯片的主板通过更新BIOS即可使用锐龙3代。从价格和需求的角度考虑,主板最终选择了Asus的TUF B450M-Pro Gaming

内存使用了两条16G的光威TYPE-α DDR4-3200: More

利用Windows 10自带的OpenSSH配置Git

Windows 10 1709之后,系统中默认会安装OpenSSH客户端,并且加入了环境变量:

系统环境变量

才更新的时候,导致了Git工作不正常,即每次拉取都需要输入SSH Key的passphrase。按照以往的习惯和教程,都会在Shell(Bash、PowerShell)启动的时候,运行一下ssh-agent,并手动输入一次passphrase即可。而更新后,由于环境变量的缘故,git运行的是C:\Windows\System32\OpenSSH中的ssh,不知道什么原因找不到Shell启动的ssh-agent,导致每次都需要输入passphrase。

解决方法就是让git使用系统自带的OpenSSH,并且设置OpenSSH的服务为自启动。 More

两种在智能摄像头执行命令的方法

之前的某个时间段内我们对智能摄像头进行了一些研究,除了针对云服务、App交互部分的测试,还需要到摄像头上进行一些调试的操作。除了通过默认SSH密码、刷ROM、拆机接线写入文件,还用到了两种比较有意思的方法。

SD卡命令执行

大多数智能摄像头使用的linux系统,启动的工作都在init.sh脚本中完成。部分摄像头在init.sh脚本中保留了一些测试代码,检测特定的文件并尝试执行。

以小蚁摄像头为例,某款摄像头的init.sh中有如下代码: More

使用DNSCrypt以及选择最佳的DoH Resolver

Intro

DNS劫持、污染在国内相当常见。除了用来屏蔽一些国外的网站,最常见的是劫持百度统计的域名。因为国内大多数网站都使用百度统计,而使用百度统计需要从百度的网站加载一段JavaScript。部分运营商通过DNS劫持,重定向该请求到自己的服务器,并返回一段包含有广告代码的JavaScript,用于弹窗、推广等广告活动。印象最深的是前几年某银行的行长在使用自家的App时弹出了一段红包广告,因此暴怒。而我个人则是因为有次被劫持了live.com,而心有余悸。

所以我一直使用USTC的DNS进行域名解析,虽然无法防止记录和中间人工具,但大多数常用网站的解析结果还算权威。然而,最近半年发现USTC的DNS也被污染了:

C:\Users
λ  Resolve-DnsName -Server 202.141.162.123 www.google.com
Name                                           Type   TTL   Section    IPAddress
----                                           ----   ---   -------    ---------
www.google.com                                 A      157   Answer     74.86.228.110

C:\Users
λ  Resolve-DnsName -Server 202.141.178.13 www.google.com
Name                                           Type   TTL   Section    IPAddress
----                                           ----   ---   -------    ---------
www.google.com                                 A      154   Answer     74.86.228.110

于是转向DNSCrypt,DNSCrypt是一种加密DNS请求的网络协议,可以有效的阻止重放攻击、观察攻击、时序攻击、中间人攻击和解析伪造攻击。DNSCrypt相关的技术包括: More

批量吊销、恢复国内软件证书

RevokeChinaCerts收集了国内大多数热门软件的数字证书,并且能够将证书设为系统不受信,阻止相关厂商软件的安装。几年前用的时候,发现RevokeChinaCerts自带的添加工具有时会出现添加不上的问题,看了一下发现PowerShell的实现更为方便和稳定,于是写了个PsRevokeCerts

原理

PowerShell的实现相对简单,在管理员模式下,将证书文件添加到Cert:\LocalMachine\Disallowed即可,代码如下:

Import-Certificate -FilePath $certFilePath -CertStoreLocation Cert:\LocalMachine\Disallowed

用法

克隆工程,并初始化RevokeChinaCerts子模块: More

VPS&WordPress更新记录

Contabo的VPS试用了半年,除了速度其他方面总体满意。通过测试,非大陆地区的延迟较低,速度也不错,大陆民用线路实在卡得不行,延迟基本在300ms以上。所以,做穿透还是得用香港、台湾或者日本的服务器。另外尝试了一下CloudFlare的CDN,运行一个月试试。

同时,Wordpress更新的时候遇到了一些问题,顺手做了如下调整:

针对Ngnix的调整: More

ProxyBroker改造记录

近几年的工作多数围绕着Web Services进行,无非就是授权的攻击测试、扫描等等,这类操作也是各种WAF和风控机制的首选拦截对象。由于前期没有做代理,导致公司出口IP被某网站封禁,并通过各种威胁情报共享的机制被应用到更多网站上,甚至办公室没法访问公司自己的某些服务。去年开始尝试使用一些开源的工程搭建代理池,如scyllaproxy_poolProxyBroker等,因为只是简单的搭建,只能算是“能用”的阶段,一些问题并没有及时解决。最近对上述代理工具进行了一些严格的测试,并且阅读了部分代码,最终确定使用ProxyBroker作为代理工具,并加以改造,实现了稳定的代理池。

根据现有情况,我们对代理池的需求如下:

  • 支持二级代理,即ProxyRotator,内网搭建一个代理服务器,自动切换出口代理
  • 尽可能多的代理IP,扩展性要好,方便增加代理网站
  • 出口IP检测,检测地理位置、连接速度、类型、匿名度等
  • 代理有效性检测,自动剔除失效IP
  • 稳定、长时间运行,各种策略完善

综合评估后,ProxyBroker比较符合需求,在使用的过程中,遇到两个问题: More

使用Scoop简化Windows逆向环境搭建

作为码农及安全行业从业人员,在工作中会使用到各种开发、逆向、分析、调试等工具。不少人都会在成长的过程中,构建一套符合自身习惯的环境,或者采用Kali Linux、Appie、吾爱破解工具箱之类的预装环境。上古时代,收集各种论坛发布的工具箱也是乐趣之一,从中可以搞到一些有趣的插件,学习一些配置。

工作之后,尤其是这几年给不少新人做了入职培训,遇到如下情况:

  • Windows为主:公司默认配备了Windows笔记本,且有文档编辑需求,大多数人必须使用Windows;
  • 环境一团糟:员工会按照自己的习惯搭建一套自己的环境,而且大多数人喜欢就地解压,环境变量随意配置;
  • 来源不明:配置工作环境比较原始,包括但不限于U盘拷贝、IM传送、FTP、甚至随便从什么地方下载;
  • 重复工作:自动化的服务器需要手动配置;

上述情况带来的问题十分明显,抛开琐碎和重复的工作,工具版本过低、冲突导致的问题时常出现,十分影响效率。 More