Quantcast
Channel: 睿论坛 - 最新话题
Viewing all articles
Browse latest Browse all 5702

开发一个root权限的App

$
0
0

@Alan_xz wrote:

需求:我要开发一个拥有root 权限的app 我在论坛浏览了好多,也有很多介绍 但不是很理解,在网上我找到一个demo 但是不太理解它的执行文件的操作意义,能不能解释下。。。 我安装后返回的UID GID 是 0 是成功了么??

main 代码
int main(int argc, char * argv[]) {
@autoreleasepool {
setgid(0);
setuid(0);
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}

然后在打包deb的时候 在DEBIAN下 添加了两个可执行文件
1.postinst代码如下:(注:我的工程名为ReverseTest)
#!/bin/bash
cd "/Applications/ReverseTest.app/"

process origin binary

mv ReverseTest ReverseTest_
chown root.wheel ReverseTest_
chmod +s ReverseTest_

cont=`cat <<"EOF"

!/bin/bash

dir=$(dirname "$0")
exec "${dir}"/ReverseTest_ "$@"
EOF
`

create new fake binary

echo -e "$cont" > ReverseTest
chown root.wheel ReverseTest
chmod +x ReverseTest

The RESPRING script after Install

declare -a cydia
cydia=($CYDIA)

if [[ $1 == install || $1 == upgrade ]]; then
if [[ ${CYDIA+@} ]]; then
eval "echo 'finish:restart' >&${cydia[0]}"
fi
fi

exit
2.prerm代码如下:

!/bin/bash

rm -f "/Applications/rootApp.app/ReverseTest_"

附demo地址:https://github.com/QbsuranAlang/rootApp

Posts: 1

Participants: 1

Read full topic


Viewing all articles
Browse latest Browse all 5702

Trending Articles