注册 登录
  • 学习不是填满水桶, 而是点燃火焰! Education is not the filling of a pail but the lighting of a fire@叶芝 (爱尔兰诗人)

Gruyere之账号注册(二)

渗透测试 Sxx 160次浏览 2325字 1个评论

Gruyere有以在线的形式进行测试学习,也有将资源包安装到本机时进行测试学习两种方式。

那么在开始学习前,需要注册一个账号,为自己所用。


创建账号

要想访问Gruyere,请先到 https://google-gruyere.appspot.com/start 注册账号。(要科学上网)

AppEngine将会启动Gruyere的新案例,为其分配唯一的ID,假设是123,然后将其重定向到 https://google-gruyere.appspot.com/123/ 。
Gruyere的每个案例都是来自其他案例的“沙箱(sandboxed)”,所以你的案例不会受到任何使用Gruyere的人的影响。如果你想与别人分享您的Gruyere案例(例如,给他们展示你的攻击成功成果),只需要给他们完整的URL,包括你唯一的ID。

 

Gruyere源代码可在线获取,以便你可以使用白盒入侵进行测试。你也可以通过 https://google-gruyere.appspot.com/code/ 浏览源代码,或从 https://google-gruyere.appspot.com/gruyere-code.zip下载所有文件。如果要调试或者尝试修复错误,可以下载并在本地运行。


本地安装及运行

温馨提醒:由于Gruyere非常容易受到攻击,所以在本地运行时,Gruyere会有一点自带的防范措施。你也会看到部分代码被标记为“禁止更改”的字样。Gruyere只接受来自localhost的请求,并且要带上自己的唯一ID。但是,想要充分防范外部攻击是很困难的。如果你更改了Gruyere,你可能更容易受到真正的攻击。因此,你应该在本地运行Gruyere时关闭其他网页,并确保没有其他用户登录到你正在使用的计算机。

 

要在本地运行Gruyere,您将首先需要安装Python 2.7(已安装,请忽略)。Gruyere是用Python2.7版开发和测试的,可能不适用于其他版本的Python。

Python可以在python.org下载。

Gruyere可以在https://google-gruyere.appspot.com/gruyere-code.zip下载,并将其解压缩到本地磁盘。然后运行应用程序,以Windows为例:

  1. 打开CMD,进入到Gruyere的目录中,运行gruyere.py
  • cd gruyere.py
  • gruyere.py

Gruyere之账号注册(二)

  • 在浏览器中输入:localhost:8008/ID即可

在本地运行Gruyere与访问App Engine上的案例之间存在一些细微差别。最明显的是App Engine版本是在有限的沙箱中运行,所以如果你做一些使Gruyere进入无限循环时,显示器就会检测到并阻止它。但是在本地运行时可能不会发生自我阻断的功能,具体取决于循环正在进行的操作。


重置按钮

如上所述,每个案例都是一个沙盒,所以它不会消耗无限的资源,也不会干扰别人的案例。尽管如此,你都有可能将你的Gruyere案例处于不可用的状态。如果发生这种情况,你可以使用“重置按钮”,以清除案例中的所有数据,并从头开始。为此,请使用您的案例ID访问此URL:

https://google-gruyere.appspot.com/resetbutton/ID


关于代码

Gruyere小巧简洁。以下是该Gruyere代码文件的解释:

gruyere.py 是Gruyere的主要网络服务器

data.py 是在数据库中存储默认数据。自带一个管理员帐户和两个默认用户

gtl.py 是Gruyere模板语言文件

sanitize.py 是用于清除HTML的Gruyere模块,用于保护应用程序免受安全漏洞的影响。

resources/... 保存所有模板文件、图像、CSS等


特点和技术

Gruyere具有许多增加攻击面的特殊功能和技术。在这里强调下,当在尝试攻击时你需要熟知它们。以下是每个新漏洞的介绍:

  • HTML片段:用户可以在其片段中包含有限的HTML子集。
  • 文件上传:用户可以将文件上传到服务器,例如在其片段中添加图片。
  • 网络管理:系统管理员可以使用Web界面管理系统。
  • 新帐户:用户可以创建自己的帐户。
  • 模板语言:Gruyere模板语言(GTL)是一种新的语言,可以使模板简单易用,因为模板直接连接到数据库。GTL文件可以在gruyere/gtl.py
  • AJAX:Gruyere使用AJAX在home和snippets页面上实现刷新。你应该忽略Gruyere的AJAX部分,除了具体告诉你需要专注于AJAX的测试

在真正的应用程序中,刷新可能会自动发生,但是在Gruyere中,我们将其手动设置,使你在使用它时可以完全控制。当你单击刷新链接时,Gruyere提取带有刷新当前页面数据的feed.gtl 文件,然后客户端脚本使用浏览器DOM API(文档对象模型)将新的片段插入页面。 由于AJAX在客户端运行代码,因此无法访问源代码的攻击者可以看到此脚本。


Gruyere的使用

要了解Gruyere的功能,请完成以下任务:

  • 通过主页上的“All snippets”链接查看其他用户的片段。还要查看他们的主页设置为什么。
  • 注册一个帐号,以供自己在黑客攻击时使用。对于Gruyere帐户,请勿使用与你实际服务相同的密码。
  • 填写帐户的个人资料,其中包括一个私人网页摘要和你名字显示的图标。
  • 创建一个喜欢的恶作剧片段(通过“New Snippet”)。
  • 将文件(通过“upload”)上传到你的帐户。

这涵盖了Gruyere的基本功能。

那么测试之旅即将开始啦!

参考:Gruyere官网-part1

相关文章目录:

Gruyere之渗透学习简介(一)

Gruyere之XSS上(三)


T1op|T1op.com , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明Gruyere之账号注册(二)
喜欢 (2)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(1)个小伙伴在吐槽