我希望为在封闭 LAN 或 WAN 上运行的特定 Windows 服务器/客户端应用程序(跨多个站点的 1 到 200 多个用户)编写安全审查;它不是一个网络应用程序。该应用程序在我国的一个行业内被广泛使用(市场领导者),并且存储在应用程序中的信息非常敏感。
我已经确定的问题类型是:
- 使用默认数据库用户名和密码(完全管理员访问权限)。此登录以纯文本形式保存在应用程序文件夹中。
- 在数据库中以纯文本形式存储用户密码
- 没有复杂的密码要求
- 有权访问应用程序中可以运行 SQL 查询的工具的用户(具有完全权限;尽管他们自己的应用程序级别权限限制)
- 在响应 API 请求的所有客户端计算机上运行的 HTTP 服务器服务。无需用户/密码。
- 与所有应用程序文件的默认文件共享,包括包含数据库/用户名/密码的文件
- 已在价值百万美元的欺诈/法律/人力资源案件中用作证据的用户操作的审计信息(可以轻松更改/删除/伪装 - 请参阅上述任何一项!)
我什至没有看过缓冲区溢出、SQL 注入等。但是一位同事提出要帮助我解决这个问题。
因为我对此有点陌生;我认为这将是供应商未要求的技术评论(类似于已发表的期刊文章)?该软件的较大用户通常会尽可能地保护它;我想我可以写一个“硬化”指南吗?
谁能给我建议:
- 基于上述的任何一般性建议?
- 我应该写安全审查或强化指南吗?
- 有没有类似评论类型的好例子?(我可以找到很多 Web 应用程序评论;但没有那么多应用程序评论 - 但是一些 SCADA 评论很有用
谢谢!