一个基于iOS与Cycript的SpringBoard弹框小恶作剧

近日在越狱iPhone上通过Cydia安装了Cycript脚本语言,新手上路,通过ssh完成了一个基于SpringBoard的弹框小恶作剧,写此文予以分享。

效果图

从0到1的准备工作

  1. iPhone越狱:推荐盘古越狱,iOS 7到9全系列可越狱,尤其是最新推出的iOS 9.2-9.33越狱工具,可在越狱和非越狱状态任意切换,极为自由灵活。

  2. 越狱iPhone安装Cydia,一般越狱工具在越狱后会自动安装该软件。

  3. 在Cydia中搜索CydiaSubstrate、Cycript、OpenSSH这3个插件安装。其中CydiaSubstrate能够保证绝大部分越狱插件安全运行,避免个别劣质插件造成系统崩溃的现象;Cycript是由Cydia之父saurik推出的一款脚本语言,等下我们用它来实现恶作剧代码注入;OpenSSH能够帮助我们在终端通过ssh连接到iPhone手机,接着便可在iPhone终端执行Cycript。


代码与其它

  1. 将电脑和iPhone手机分别联网,在iPhone的网络设置中查看该机ip地址。

  2. 打开电脑终端,通过ssh连接到iPhone中,命令是ssh root@[iphone ip address],如下所示:

localhost:~ zklgame$ ssh root@192.168.1.100
root@192.168.1.100's password: 

这里需要输入的密码是OpenSSH安装后的默认密码alpine,建议在OpenSSH安装后立刻更改此默认密码,以免在今后造成安全损失。

  1. 现在已经进入了目标iPhone的终端,首先寻找SpringBoard所在进程,好进行Cycript注入。如下所示:
Meow:~ root# ps -e | grep SpringBoard
  286 ??         0:54.51 /System/Library/CoreServices/SpringBoard.app/SpringBoard
  980 ttys000    0:00.01 grep SpringBoard
Meow:~ root# cycript -p 286
cy# 

可以看到,SpringBoard所在进程的PID是286,故对此进行注入。

  1. 构造一个UIAlertView:
cy# alertView = [[UIAlertView alloc] initWithTitle: @"You are a pig!" message: nil delegate: nil cancelButtonTitle: @"Yes, I am." otherButtonTitles: nil]
#"<UIAlertView: 0x13a93ddf0; frame = (0 0; 0 0); layer = <CALayer: 0x13cfc81d0>>"
  1. 将手机交给别人玩耍。。。

  2. 看准时机,show alertView:

cy# [alertView show]
  1. 可以在别人玩你手机的时候不断变着法子来弹出不同的窗口,或者在终端看看他正在玩什么app,适当杀一杀什么的啊。。。祝你好运。。。

结语

这是一篇不怎么正经的文章,希望对你有所帮助_

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • #iOS-Jailbearking-Study ##iOS越狱学习 iOS越狱就是发现iOS设备硬件或者软件的漏洞...
    XLsn0w阅读 3,304评论 0 0
  • iOS 越狱的Tweak开发 原文链接在我的博客 https://yohunl.com/ios-yue-yu-de...
    yohunl阅读 16,958评论 20 34
  • 产品线独享资源分配 职能型共享资源分配-创新的回归,产品线间的竞争。 应用:各平台组的项目竞争,各平台组提出项目规...
    heardlover阅读 1,339评论 2 0
  • 天台的门紧闭着 你费尽心力推不开 谁在外面唱歌 不要在梦的锁孔张望 月亮背后的房间里并不神秘 爱情坐在轮椅上 戴着...
    达斐阅读 1,813评论 1 7
  • 写这个文章,我还没有成为一名妻子。虽然没经历过婚姻,但我依然完完全全具有发言权,一个从五岁生活至今二十多年混迹于破...
    雅粒阅读 1,521评论 0 1