关于KurukshetraKurukshetra是一款功能强大的开源框架,该框架的主要目标就是通过交互式的问题解决方式来告诉广大研究人员或开发人员如何能够更好地实现安全编码 。Kurukshetra本质上是一个Web框架,并未托管合理复杂的安全编码挑战提供坚实的基?。??比匀荒芄桓?萦没?淙敫咝Ф??卦诎踩?纳澈谢肪持兄葱忻扛鎏粽?。
Kurukshetra由两个组件组成,一个是用php编写的后端框架,它的任务是管理并利用底层Docker系统为挑战执行提供安全的沙盒环境;另一个组件则是前端部分,它是一个面向用户的Web应用程序 , 主要负责提供所有必要的控制机制 , 供管理员托管和修改挑战,用户执行和查看每个输入的结果 。
支持的平台Kurukshetra已经在Ubuntu/Debian(基于apt-get的发行版)和mac操作系统上进行了测试 。理想情况下,它可以在任何安装了PHP 7.2、MySQL和Docker(以及启用了远程API)的linux的发行版操作系统上正常运行 。
工具要求该工具的正常运行需要使用到下列依赖组件以及配置参数:
1、Git客户端:sudo apt-get install git;工具安装该工具的安装非常简单 , 广大研究人员只需要将该项目源码克隆至本地:
2、PHPv7.2:sudo apt-ge install php7.2-curl php7.2-mbstring php7.2-mysql;
3、MySQL:sudo apt-get install mysql-server;
4、Docker;
5、启用DockerAPI;
6、在/var/config/路径下创建一个文件夹,权限设置为www;
git clone https://Github.com/a0xnirudh/kurukshetra.git
然后切换到项目目录中,创建目录并提供对应权限即可:cd kurukshetracp -r * /var/www/html/chmod 755 -R /var/www/html
Docker容器配置Kurukshetra使用Dockers API来运行用户提交的代码 。在我们使用docker API之前,需要一次性配置,操作如下所示:1、获取Docker镜像:docker pull phusion/baseimage:latest;
2、切换到安装目录:cd installation/optional/;
3、使用Dockerfile构建Kurukshetra镜像:docker build -t kurukshetra .;
除此之外,你也可以直接运行下列命令自动化完成工具Docker镜像的安装与配置:
cd installation/optional/Python/ target=_blank class=infotextkey>Python install.py
工具使用完成工具安装与配置后,我们就可以访问http://localhost或http://127.0.0.1来进入安装页面了:文章插图
【如何利用Kurukshetra以交互式的方式学习如何进行安全编码】输入MySQL数据库凭证,并点击验证,然后输入google OAuth的Client ID和Client密钥,并确保重定向URL设置为了http://your-domAIn.com/login/index.php 。
此时 , 我们就可以开始使用Kurukshetra了 。
工具运行截图挑战列表页面:
文章插图
挑战解决页面:
文章插图
管理员面板(统计数据):
文章插图
管理员挑战修改/添加页面:
文章插图
容器管理:
文章插图
工具演示视频管理员功能演示:【点我观看】
许可证协议本项目的开发与发布遵循GPL-3.0开源许可证协议 。
项目地址Kurukshetra:【GitHub传送门】
参考资料
https://docs.kurukshetra.io/本文作者:Alpha_h4ck, 转载请注明来自FreeBuf.COM
https://docs.docker.com/engine/api/v1.24/
https://askubuntu.com/a/856794
https://docs.docker.com/install/
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-16-04
https://success.docker.com/article/how-do-i-enable-the-remote-api-for-dockerd
https://www.YouTube.com/watch?v=yrfmyz3p9a4
推荐阅读
- 机器学习如何帮助企业应对网络威胁?
- 春天如何保“肾”
- 如何在 Android 手机上使用耳机通话
- 如何安全骑电动车 如何安全骑电动车?骑电动车安全注意事项!
- 想给团队取个名字 如何给团队取一个霸气的名字
- 怎么贮存土豆不发芽 如何存土豆不发芽不发绿
- 独身女性如何安全住酒店
- 如何使用干发帽 如何使用干发帽才不会掉
- 老年人如何素食
- Lisa疯马秀无衣彩排,YG娱乐股价疯狂下跌,该如何对应?