我已经在CTF里面混了一段时间了,我也做专业的笔试,我注意到明显缺乏使用windows环境的CTF竞赛。
这与我专业测试的大多数环境形成了鲜明的对比(这并不是说在环境中没有大量使用*nix ),只是它(IMHO)更有利于开发AD基础设施和客户端,而不是一次开发一个unix盒。
虽然Windows环境中存在大量的RE/二进制挑战,但我还没有看到一个好的CTF运行,它使用Windows网络而不是*nix变体。我可能是完全错误的,或只是玩蹩脚的挑战,但我怀疑许可证问题发挥了很大的作用。
我觉得这是很重要的,因为当毕业生和其他渴望进入信息秒开始的时候,我经常建议和CTF一起玩,做其他的挑战/虚拟环境。我无法推荐的是一种有助于利用Windows环境的资源。网络应用程序有很多,例如笔试实验室已经预先配置好了,可以使用虚拟机进行web应用测试,我觉得这很棒。我认为,如果在Windows上的特定攻击场景中也存在这样的东西,那就太棒了。
我想要的是:
发布于 2015-01-30 12:48:41
作为一个积极的CTF团队的成员,它组织了一些比赛,我想我可以说几句话,从内部看它是怎样的。
首先,发牌问题其实是主要的问题。但以下是你们的问题:
是否有任何CTF竞赛包括模拟Windows网络作为挑战的一部分(不仅仅是通常的RE二进制挑战)?
我不知道你所说的“模拟Windows网络”到底是什么意思,但我猜你指的是某种vpn网络或其他类型的虚拟网络,在那里你需要找到一些易受攻击的主机并加以利用。这个想法很好,我认为这里的主要限制是Windows产品的付费许可。事实上,很难为比赛找到赞助商(我们通常只与举行CTF的会议的组织者合作),也很难为这种要求获得资金。考虑到我们不仅需要投入时间,还要投资私人资金来应对挑战,所以在免费Linux系统和付费Windows系统之间做出选择并不困难。更重要的是,我从未听说过“两天”Windows许可证,它们将是CTF游戏的最佳解决方案。不同竞争之间共享的单一许可证也不是完美的解决方案。由于这种竞争的目的和球员的性质,我们需要考虑的情况是,我们的许可证钥匙将被窃取。为了防止出现这种情况,我们需要使用一些MAC,编写策略,并将系统本身硬化,以免让玩家对我们进行过多的攻击。在我个人看来,在Linux上比在Windows系统上做这件事要容易得多。总结一下,由于我提到的原因,建立这样的环境是没有好处的,即使从参赛者的角度来看,在上面玩也是很酷的。
是否有任何可下载的Windows预先配置(例如AD服务器和2x客户端PC连接到一个域,但最好有不同的配置,例如kerberos)?
不,是因为许可证的原因。我不知道这是否可能。我们可以存储需要应用的配置本身,或者创建错误所在的软件--但是在CTF竞争的情况下,这是毫无意义的。如果您知道在哪里查找bug,那么黑客就容易得多。更重要的是,您要求用户在他的机器上拥有系统的确切副本,这是不可取的。比赛主要测试技能,而不是拥有的资源(软件和硬件)。
除了许可问题之外,运行Windows不实用还有什么技术原因吗?我可以想象,将Windows机器作为一个虚拟机器运行是足够简单的快照和恢复,如果有人玩是一个混蛋,并决定尝试和垃圾机器。
合并第一和第二答案..。在网络挑战的情况下--从技术上讲,我们需要确保主机的安全性,在我看来,这比开放系统更难。对于重载挑战,我们需要为所有运行在负载均衡器后面的机器提供多个许可证。如果出现离线挑战--我们需要从用户到拥有完全相同的系统或软件,这是不好的-我们将优先考虑资源而不是玩家的技能。
发布于 2014-12-20 14:38:19
到目前为止,我为Windows开发找到的最佳环境必须是OSCP实验室(如果您通过了!)。这是一个庞大的网络,有一个公平的组合Windows和其他操作系统,尽管它是占主导地位的Windows。
据我所知,没有一个存在,人们有他们,虽然不提供它们,因为许可问题,正如您前面提到的。这既适用于下载,也适用于运行CTF挑战的人员/组。
https://security.stackexchange.com/questions/72357
复制相似问题