1

我最近在 C 中实现了一个简单的网络服务器。但是,我遇到了一些安全问题。

目前,当我收到 GET 请求时,我会执行以下操作:

  • 解析标题
  • 如果标头有效,请检查我们是否有文件权限
  • 如果我们有权限,请发送文件
  • 如果我们没有权限,请发送403 Forbidden
  • 如果文件不存在,发送404 Not Found
  • 否则,发送400 Bad Request

但是,由于网络服务器自己执行此操作,因此在为客户端提供服务时会使用权限和特权。换句话说,这意味着(当前)我的网络服务器显示 a 的唯一方法403 Forbidden是,即使启动网络服务器的用户也没有文件的读取权限。

显然,这是一个问题。

我的问题如下:是否可以统计groupothers标记读/写权限而不是仅仅user?我open()目前用来检查权限 - 我必须使用其他东西吗?

4

0 回答 0