-------- ---------- -----------
| | | PC II | | |
| PC I | --> | (PROXY) | -> | GATEWAY |
| | | | | |
-------- ---------- -----------
####
#!/usr/bin/perl -w
use HTTP::Proxy;
use HTTP::Proxy::BodyFilter::tags;
use HTTP::Proxy::BodyFilter::simple;
system("echo 1 > /proc/sys/net/ipv4/ip_forward");
my $proxy = HTTP::Proxy->new( port => 8080, host => 'localhost' );
$proxy->push_filter(
mime => 'text/html',
response => HTTP::Proxy::BodyFilter::tags->new(),
response => HTTP::Proxy::BodyFilter::simple->new(
sub { ${ $_[1] } =~ s!src=.+(.jpg|.gif|.bmp|.png)!src=\"http://files.myopera.com/Idonotlikebroccoli/albums/3758/thumbs/noob.jpg_thumb.jpg\"!ig;
print "Filter ran!\n"; }
)
);
$proxy->start;
####
iptables -F
iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080