Ako neko ima priliku da provjerava ADSL promet za 10+ korisnika vjerovatno zna koji je smor stalno login/logout i provjeravati promet.
Evo python skriptica mozda nekom ustedi vremena.
[code]#!/usr/bin/python
Pregled prometa korisnika na BH Telecom-u
import urllib2, cookielib, HTMLParser
import ClientForm
Izmijeniti/dodati podatke o korisnicima (lokacije su samo radi lakseg raspoznavanja)
korisnici = [
(‘Lokacija1’, ‘username1’, ‘password1’),
(‘Lokacija2’, ‘username2’, ‘password2’),
(‘Lokcaija3’, ‘username3’, ‘password3’),
]
class BHT:
def init(self, lokacija, user, password):
self.lokacija = lokacija
self.username = user
self.password = password
self.url = ‘http://www.bhtelecom.ba/bihnet_racun_v4.html’
cookiejar = cookielib.LWPCookieJar()
cookiejar = urllib2.HTTPCookieProcessor(cookiejar)
opener = urllib2.build_opener(cookiejar)
urllib2.install_opener(opener)
def login(self):
response = urllib2.urlopen(self.url)
forms = ClientForm.ParseResponse(response, backwards_compat=False)
form = forms[1]
form['user'] = self.username
form['pass'] = self.password
self.page = urllib2.urlopen(form.click()).read()
def stanje(self):
self.login()
start = self.page.find('<b>')
end = self.page.find('</b>')
ukupno = self.page[start+3:end]
if start != -1:
print '\033[93m', self.lokacija.ljust(10), ukupno.rjust(15), '\033[0m'
else:
print '\033[93m Username/password (%s) nije ispravan ili je u pitanju neka druga greska!!\033[0m' % (self.lokacija)
for lokacija, u, p in korisnici:
get = BHT(lokacija, u, p)
get.stanje()
EOF[/code]
ah da… uz sitnu izmjenu ovo moze biti brute forcer takodje