1

我正在开发一个基于应用程序的防火墙,它拦截应用程序发起的传出互联网请求,以通知用户试图从他的设备(从这些应用程序)访问哪些外部服务器和端口。此安全功能最终将保护用户免受窃取个人数据的恶意软件的侵害。

我正在使用 Linux 安全模块 (LSM) 框架来拦截内核级别的 Internet 套接字请求,以允许或拒绝连接。此请求通过 unix 域套接字发送给用户。有一个应用程序充当守护进程,等待请求警报(unix 域套接字服务器),向用户显示请求信息。这决定是接受还是拒绝连接,并且这个选择被发送回钩子函数(LSM)。

不幸的是,用户被迫安装新内核才能使用此功能,因为 LSM 挂钩函数是在编译时安装的(不再作为内核模块)。

有没有其他方法可以使用互联网套接字来允许或拒绝连接?

4

1 回答 1

2

我正在开发基于应用程序的防火墙

如果通过“基于应用程序的防火墙”,您的意思是您试图作为没有 root 权限的 SDK 应用程序执行此操作,您可以获得的最接近的方法是创建代理,但这需要一些用户配置才能启用。

如果你可以编写你的应用程序,否则它本身就是 Android 中的一个安全漏洞,需要修复。

于 2013-11-04T14:15:11.590 回答