2345技术员联盟

Docker 容器中的老式 DOS BBS

  • 来源:未知 原创
  • 时间:2018-05-15
  • 阅读:
  • 本文标签:

     事实证明这是可能的,但很难。我使用了所有三种主要的 DOS 模拟器(dosbox、qemu 和 dosemu)。我让它们都能在 Docker 容器中运行,但有很多有趣的问题需要解决。都要做的事是在 DOS 环境下提供一个伪造的调制解调器。它需要作为 TCP 端口暴露在容器外部。有很多方法可以做到 —— 我使用的是 tcpser。dosbox 有一个 TCP 调制解调器接口,但事实证明,这样做太问题太多了。挑战来自你希望能够一次接受多个传入 telnet(或 TCP)连接。DOS 不是一个多任务操作系统,所以当时有很多黑客式的方法。一种是有多台物理机,每个有一根传入电话线。或者它们可能会在 DESQview、OS/2 甚至 Windows 3.1 等多任务层下运行多个伪 DOS 实例。(注意:我刚刚了解到 DESQview/X,它将 DESQview 与 X11R5 集成在一起,并取代了 Windows 3 驱动程序来把 Windows 作为 X 应用程序运行。)



    出于各种原因,我不想尝试在 Docker 中运行其中任何一个系统。这让我模拟了原来的多物理节点设置。从理论上讲,非常简单 —— 运行一组 DOS 实例,每个实例最多使用 1MB 的模拟 RAM,这就行了。但是这里面临挑战。在多物理节点设置中,你需要某种文件共享,因为你的节点需要访问共享的消息和文件存储。在老式的 DOS 时代,有很多笨重的方法可以做到这一点 —— Netware、LAN manager,甚至一些 PC NFS 客户端。我没有访问 Netware。我尝试了 DOS 中的 Microsoft LM 客户端,与在 Docker 容器内运行的 Samba 服务器交互。这样可以使用,但 LM 客户端即使有各种高内存技巧还是占用了很多内存,BBS 软件也无法运行。我无法在多个 dosbox 实例中挂载底层文件系统,因为 dosbox 缓存不兼容。这就是为什么我使用 dosemu 的原因。除了有比 dosbox 更完整的模拟器之外,它还有一种共享主机文件系统的方式。所以,所有这一切都在此:jgoerzen/docker-bbs-renegade。



     我还为其他想做类似事情的人准备了构建块:docker-dos-bbs 和底层 docker-dosemu。意外的收获是,我也试图了在 Joyent 的 Triton(基于 Solaris 的 SmartOS)下运行它。让我感到高兴的印象是,几乎可以在这下面工作。是的,在 Solaris 机器上的一个基于 Linux 的 DOS 模拟器的容器中运行 Renegade DOS BBS。Samba 维护人员刚刚发布新版本以解决两个严重的漏洞。这些漏洞可导致非权限远程攻击者对服务器发动 DoS 攻击并更改其它用户包括管理员用户在内的密码。Samba 是一款开源软件,运行在当前多数操作系统上,包括 Windows、Linux、UNIX、IBM System 390 和 OpenVMS。Samba 允许非 Windows 操作系统如 GNU/Linux 或 Mac OS X 和 Windows 操作系统分享网络共享文件夹、文件和打印机。



     DoS 漏洞,这个 DoS 漏洞 (CVE-2018-1050) 影响所有 4.0.0 及以上的 Samba 版本,而且“当 RPC 打印子系统 (spoolss) 服务配置为以外部守护进程运行时”遭利用。Samba 在安全公告中指出,“对某些打印子系统 RPC 调用输入参数的输入清洁检查的缺失能导致打印机打印子系统服务崩溃。如果 RPC 打印子系统服务默认为一种内部服务,那么客户端能做的就是崩溃自己的认证连接。”密码重置漏洞,第二个漏洞 CVE-2018-1057,能导致非权限认证用户经由 LDAP 更改其它用户包括管理员用户的密码。这个密码重置漏洞存在于 Samba 4.0.0 及以上版本中,不过仅在 Samba 活动目录 DC 实现中起作用,当用户要求经由 LDAP 修改密码时,它无法正确验证用户权限。由于大量 Linux 发行版本安装了 Samba,因此可能大量服务器都处于风险之中。Samba 维护人员发布了新版本 4.7.6、4.6.14和4.5.16解决这两个问题,并建议管理员立即更新易受攻击的服务器。如果你使用的是老旧版本的 Samba,可参照此页面打补丁。


本文来自电脑技术网www.it892.com),转载本文请注明来源.
本文链接:http://www.it892.com/content/system/DOS/20180515/94384.html

推荐阅读
热点排行
  1. Docker 容器中的老式 DOS BBS
  2. 提起操作系统是DOS的《三国志5》,你一定觉得是
无觅相关文章插件,快速提升流量