前一篇写了JS实现的userscript插件往网页里面注入代码,监听键盘获取用户输入的实现,发现userscript插件危险值很高,现在用python模拟下网吧浏览器劫持网页弹广告,警示下自己和喜欢在网吧上网的人,再次警告在公共场所:敏感信息一定不要轻易输出,这次很轻松就用两种方法模拟了劫持用户信息的实现,相信真正的一门心思在这上面钻研的人,手段可以千变万化,会让人防不胜防,最好的应对方法就是以不变应万变,尽量不在公共场所暴露信息,尽量不安装来路不明的软件和插件,有点跑题了,言归正传,下面给出python模拟网吧浏览器劫持网页弹广告
=================================================================
1、实现思路
1.1 配置广告内容,以及需要弹广告的页面
1.2 python读取配置,并将获取的广告注入指定页面显示
2、实现过程
2.1 广告的话,肯定希望可以动态更新的,所以配置信息需要写到配置人员方便操作的地方,最方便的就是服务端后台配置,此例中使用两个html代码模拟在后台输出的内容:target.html(指定弹广告的页面)、tudou.html(弹出的广告内容)。
2.2 要在用户访问指定页面时进行相应操作,最直接的办法就是让用户访问页面的浏览器是被监听的,这个在网吧里面是最容易实现的,因为网吧里面的浏览器都是网管预先安装好的,绝大部分人都不会自己再安装浏览器。这样的话,如果浏览器的入口是被修改过的,那么用户一打开浏览器就处于被监听状态了,这个时候用户的操作就相当于透明的了……
python操控ie是很容易的事情,因为网上有开源的插件,安装后直接import下就可以进行编程操作了,下面给出一个最简单的例子:
#/usr/bin/env python
#coding=utf-8
”’
Created on 2013-1-24
@author: break
@link: http://www.shizuwu.cn
”’
import win32com.client
import time
from pyquery import PyQuery as pyq
#读取设置的需要弹窗的url
f = file(“target.html”, ”r”)
target = pyq(f.read())
targetUrl = pyq(target).find(“#url”).html()
f.close()
#读取制定url设置的需要弹出的内容
f = file(“tudou.html”, ”r”)
tudou = pyq(f.read())
player = pyq(tudou).find(“#tudou”).html()
f.close()
ie = win32com.client.DispatchEx(‘InternetExplorer.Application’)
ie.Visible = 1
ie.Navigate(targetUrl)
count = 0
while ie.Busy:
count += 1
if count > 5:
print ”IE很忙…”
break
else :
print count
time.sleep(1)
else :
document = ie.Document
body = document.body
try:
#将读取的内容,在制定url弹出
testdiv = document.createElement()
testdiv.innerHTML = player
body.appendChild(testdiv)
except Exception,e:
print e.exepinfo
这段代码实现的功能是,读取配置信息,打开一个ie窗口,将读取的广告内容注入到指定打开的页面展示,这个过程中弹出的广告完全可以在后台执行,所以如果某个网吧的网管存心不良的话,整个网吧的用户操作就都有可能被他实时监控着……
光有这段代码还不行,还需要将用户使用浏览器的入口给改了,这个也很容易做到,将上面的代码文件打包成一个exe,然后换个IE图标,就可以神不知鬼不觉的让用户上钩了……不是我太邪恶,而是世界太不安全
3、总结和源码
实现效果预览: