Sha256: 08ae2650645730309d647f35e196fcc7fa3478e04d73fbc72a8f777503bb0082

Contents?: true

Size: 896 Bytes

Versions: 1

Compression:

Stored size: 896 Bytes

Contents

require 'ronin/web/server/base'

class ProxyApp < Ronin::Web::Server::Base

  get '/' do
    proxy
  end

  get '/reddit/erlang' do
    proxy(:host => 'www.reddit.com', :path => '/r/erlang')
  end

  get '/r/erlang' do
    proxy do |body|
      for_host(/reddit\./) do
        body.gsub(/erlang/i,'Fixed Gear Bicycle')
      end
    end
  end

  get '/r/ruby' do
    proxy_doc do |response,doc|
      for_host(/reddit\.com/) do
        doc.search('div.link').each do |link|
          if link.at('a.title').inner_text =~ /rails/i
            link.remove
          end
        end
      end
    end
  end

  get '/feed/vulnerabilities/latest.rss' do
    proxy_doc do |response,doc|
      for_host('osvdb.org') do
        doc.search('//item').each do |item|
          if item.inner_text =~ /(XSS|SQLi|SQL\s+Injection)/i
            item.remove
          end
        end
      end
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ronin-web-0.2.1 spec/web/server/classes/proxy_app.rb