diff --git a/test/common/beef_test.rb b/test/common/beef_test.rb index dfda07040..79257493b 100644 --- a/test/common/beef_test.rb +++ b/test/common/beef_test.rb @@ -15,7 +15,7 @@ class BeefTest def self.login(session = nil) session = Capybara::Session.new(:selenium) if session.nil? - session.visit('http://localhost:3000/ui/panel') + session.visit(ATTACK_URL) session.has_content?('BeEF Authentication') session.fill_in 'user', :with => 'beef' session.fill_in 'pass', :with => 'beef' diff --git a/test/common/test_constants.rb b/test/common/test_constants.rb index a6d16b0ca..c0d00d9e8 100644 --- a/test/common/test_constants.rb +++ b/test/common/test_constants.rb @@ -1,4 +1,6 @@ BEEF_TEST_DIR = "/tmp/beef-test/" ATTACK_DOMAIN = "attacker.beefproject.com" -VICTIM_DOMAIN = "victim.beefproject.com" \ No newline at end of file +VICTIM_DOMAIN = "victim.beefproject.com" +ATTACK_URL = "http://" + ATTACK_DOMAIN + ":3000/ui/panel" +VICTIM_URL = "http://" + VICTIM_DOMAIN + ":3000/demos/basic.html" diff --git a/test/integration/tc_login.rb b/test/integration/tc_login.rb index 40dccabe3..273413ab4 100644 --- a/test/integration/tc_login.rb +++ b/test/integration/tc_login.rb @@ -6,7 +6,7 @@ class TC_login < Test::Unit::TestCase def test_log_in session = Capybara::Session.new(:selenium) - session.visit('http://localhost:3000/ui/panel') + session.visit(ATTACK_URL) BeefTest.save_screenshot(session) session.has_content?('BeEF Authentication') session.fill_in 'user', :with => 'beef' @@ -49,7 +49,29 @@ class TC_login < Test::Unit::TestCase session.has_content?('Page') BeefTest.save_screenshot(session) - session = BeefTest.logout(session) + BeefTest.logout(session) + end + + def test_hooking_browser + attacker = BeefTest.login + victim = Capybara::Session.new(:selenium) + victim.visit(VICTIM_URL) + sleep 2.0 + + attacker.has_content?(VICTIM_DOMAIN) + attacker.has_content?('127.0.0.1') + attacker.click_on('127.0.0.1') + + sleep 1.0 + + attacker.has_content?('Details') + attacker.has_content?('Commands') + attacker.has_content?('Rider') + + BeefTest.save_screenshot(attacker) + BeefTest.save_screenshot(victim) + + BeefTest.logout(attacker) end end \ No newline at end of file