diff --git a/su.c b/su.c old mode 100644 new mode 100755 index 7be5530..add619a --- a/su.c +++ b/su.c @@ -376,6 +376,12 @@ int main(int argc, char *argv[]) chown(REQUESTOR_CACHE_PATH, req_uid, req_uid); } + + setgroups(0, NULL); + setegid(st.st_gid); + seteuid(st.st_uid); + + LOGE("sudb - Opening database"); db = database_init(); if (!db) { @@ -398,7 +404,7 @@ int main(int argc, char *argv[]) case DB_INTERACTIVE: break; default: deny(); } - + socket_serv_fd = socket_create_temp(req_uid); if (socket_serv_fd < 0) { deny();