如何解决试图在Windows 10上安装和使用该工具
我正在尝试在Windows 10上运行gauntlt,以便可以自动执行安全性测试。但是,我在安装时遇到了大问题。首先,安装Ruby。在http://gauntlt.org/页面上,gauntlt安装应为:
gem install gauntlt
但是您很快就会发现gauntlt不适用于最新版本的Ruby。经过一番尝试和错误之后,我选择了Ruby 2.4.1。 gauntlt安装现在可以成功运行。但是,当我给gauntlt一个攻击文件时,我得到了冗长的消息,说明未加载gherkin词法分析器。我承认错误消息很有帮助。经过一番谷歌搜索后,我发现此StackoverFlow页面cucumber Couldn't load 2.1/gherkin_lexer_en似乎提供了解决方案。所以我执行以下命令:
gem uninstall gherkin --force
gem install gherkin --platform ruby -v 2.12.2 --ignore-dependencies
然后,按照说明,我编辑*lib/gherkin/c_lexer.rb:7
并将prefix
的值更改为:
prefix = ''
现在当我尝试gauntlt时,出现以下错误:
[DEPRECATION] The trollop gem has been renamed to optimist and will no longer be supported. Please switch to optimist as soon as possible.
*** WARNING: You must use ANSICON 1.31 or higher (https://github.com/adoxa/ansicon/) to get coloured output on Windows
Feature: Launch curl attack
Background: # simple.attack:3
Given "curl" is installed # gauntlt-1.0.13/lib/gauntlt/attack_adapters/curl.rb:1
No such file or directory - which curl (Errno::ENOENT)
simple.attack:4:in `Given "curl" is installed'
And the following profile: # gauntlt-1.0.13/lib/gauntlt/attack_adapters/gauntlt.rb:9
| name | value |
| hostname | google.com |
Scenario: Verify a 301 is received from a curl # simple.attack:9
When I launch a "curl" attack with: # gauntlt-1.0.13/lib/gauntlt/attack_adapters/curl.rb:5
"""
curl --silent --output /dev/null --write-out "%{http_code}" <hostname>
"""
Then the output should match /30\d+/ # aruba-0.7.4/lib/aruba/cucumber.rb:206
Failing Scenarios:
cucumber simple.attack:9 # Scenario: Verify a 301 is received from a curl
我怀疑最初的No such file or directory
消息告诉我我已经以某种方式破坏了配置。我确实安装了curl,但这是前一段时间。我不知道是否需要安装其他一些gem才能完成这项工作。有没有人成功管理过此安装,并且可以建议我如何使它正常工作?启动Linux VM将会很困难,如果可能的话,我宁愿不要大量使用其他软件。我的simple.attack
文件的内容是:
Feature: Launch curl attack
Background:
Given "curl" is installed
And the following profile:
| name | value |
| hostname | google.com |
Scenario: Verify a 301 is received from a curl
When I launch a "curl" attack with:
"""
curl --silent --output /dev/null --write-out "%{http_code}" <hostname>
"""
# check for 302 or 301 response code
Then the output should match /30\d+/
我已安装的宝石列表为:
aruba (0.7.4)
bigdecimal (default: 1.3.2)
builder (3.2.4)
childprocess (4.0.0)
cucumber (1.3.20)
did_you_mean (1.1.0)
diff-lcs (1.4.4)
ffi (1.9.18 x64-mingw32)
gauntlt (1.0.13)
gherkin (2.12.2)
io-console (default: 0.4.6)
json (default: 2.0.4)
mini_portile2 (2.4.0)
minitest (5.10.1)
multi_json (1.15.0)
multi_test (0.1.2)
net-telnet (0.1.1)
nokogiri (1.10.10 x64-mingw32)
openssl (default: 2.0.9)
power_assert (0.4.1)
psych (default: 2.2.2)
rake (12.0.0)
rdoc (default: 5.0.1)
rspec-expectations (3.9.2)
rspec-support (3.9.3)
test-unit (3.2.3)
trollop (2.9.10)
xmlrpc (0.2.1)
在此先感谢您的帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。