-
-
[讨论]搞了半天才知道傳說中的 mach-portal 對 IOS 9 沒用
-
发表于: 2017-1-12 06:04 5137
-
按照盤果的說法做了細微的修正...
http://blog.pangu.io/mach-portal-details/
但是我發現一件祕密
每次在裡下斷點
service_port 都是 ffffffff 也就是沒有
然後我找了一下 com.apple.iohideventsystem 的相關資料 找到了
位於 /System/Library/LaunchDaemons/com.apple.hidd.plist
com.apple.hidd.plist Mac 有
/usr/libexec/hidd Mac 有
但是 IOS 9.3.5 ... 沒有
那還要搞個屁阿 ˇ ˇ
IOS 下不知道 launchd 要發給誰 ˇ ˇ
launchd 重复释放和分配64次后会返回给用户态完全相同的name .... 有
com.apple.PowerManagement.control 有
就差 com.apple.iohideventsystem
如果找到 com.apple.iohideventsystem 的替代品 那 9.3.5 還可以嘗試解放看看
http://blog.pangu.io/mach-portal-details/
但是我發現一件祕密
每次在裡下斷點
// lookup a launchd service: mach_port_t lookup(char* name) { mach_port_t service_port = MACH_PORT_NULL; kern_return_t err = bootstrap_look_up(bootstrap_port, name, &service_port); if(err != KERN_SUCCESS){ printf("unable to look up %s\n", name); return MACH_PORT_NULL; } if (service_port == MACH_PORT_NULL) { printf("bad service port\n"); return MACH_PORT_NULL; } return service_port; }
service_port 都是 ffffffff 也就是沒有
然後我找了一下 com.apple.iohideventsystem 的相關資料 找到了
<plist version="1.0"> <dict> <key>KeepAlive</key> <true/> <key>Label</key> <string>com.apple.hidd</string> <key>MachServices</key> <dict> <key>com.apple.iohideventsystem</key> <dict> <key>ResetAtClose</key> <true/> </dict> </dict> <key>ProgramArguments</key> <array> <string>/usr/libexec/hidd</string> </array> <key>EnableTransactions</key> <true/> <key>POSIXSpawnType</key> <string>Interactive</string> </dict> </plist>
位於 /System/Library/LaunchDaemons/com.apple.hidd.plist
com.apple.hidd.plist Mac 有
/usr/libexec/hidd Mac 有
但是 IOS 9.3.5 ... 沒有
那還要搞個屁阿 ˇ ˇ
CVE-2016-7637 用于替换了launchd进程中往com.apple.iohideventsystem发消息的port
IOS 下不知道 launchd 要發給誰 ˇ ˇ
launchd 重复释放和分配64次后会返回给用户态完全相同的name .... 有
com.apple.PowerManagement.control 有
就差 com.apple.iohideventsystem
如果找到 com.apple.iohideventsystem 的替代品 那 9.3.5 還可以嘗試解放看看
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!
赞赏
他的文章
看原图
赞赏
雪币:
留言: