Forum » Programiranje » curl + ssl
curl + ssl
Ice-Heki ::
Hoj,
imam težavo - rad bi simuliral prijavo v spletni portal, potem pa preveril eno informacijo in končal programček.
Spletni portal za dostop uporablja certifikate + geslo.
Če izvedem:
dobim prvo stran (login form) z mojimi podatki (vezanimi na certifikat). Super!
Geslo iz login forme je potrebno poslati na naslov https://domena.com/send
namesto strani, da so vpisani podatki napačni oz. prijave v sistem dobim
Ima kdo kakšno idejo kaj delam narobe?
imam težavo - rad bi simuliral prijavo v spletni portal, potem pa preveril eno informacijo in končal programček.
Spletni portal za dostop uporablja certifikate + geslo.
Če izvedem:
curl https://domena.com/read --cert cert.pem:pass --key key.pem -b cookie.txt -c cookie.txt -L
dobim prvo stran (login form) z mojimi podatki (vezanimi na certifikat). Super!
Geslo iz login forme je potrebno poslati na naslov https://domena.com/send
curl https://domena.com/send --cert cert.pem:pass --key key.pem -b cookie.txt -c cookie.txt -L --data "password=geslo"
namesto strani, da so vpisani podatki napačni oz. prijave v sistem dobim
405 Method Not Allowed
Ima kdo kakšno idejo kaj delam narobe?
crniangeo ::
če se prav spomnem, je tukaj problem končnica katero zelis gor poslat, poskusi spremeniti ime datoteke ki je zelis poslati v .txt ali karkoli podobnega :)
Convictions are more dangerous foes of truth than lies.
blackbfm ::
na blef govorim..curl uporablja GET namesto POST zato dobiš 405?
ti priporočam da začneš uporabljat fiddler za http debugging:
http://www.telerik.com/fiddler
ti priporočam da začneš uporabljat fiddler za http debugging:
http://www.telerik.com/fiddler
Zgodovina sprememb…
- spremenilo: blackbfm ()
blackbfm ::
jah nič, zaženi fiddler in glej kako brskalnik komunicira
če gre vpis prek ajaxa, zna bit server občutljiv na tale header
X-Requested-With: XMLHttpRequest
če gre vpis prek ajaxa, zna bit server občutljiv na tale header
X-Requested-With: XMLHttpRequest
Zgodovina sprememb…
- spremenilo: blackbfm ()
jype ::
Python mechanize ti bo prihranil ogromno dela.
#!/usr/bin/python loginurl = '' user = '' pw = '' import mechanize, re from decimal import Decimal br = mechanize.Browser() br.open(loginurl) br.select_form(name="loginForm") br['username'] = user br['password'] = pw response = br.submit() data = response.get_data() print re.findall(r'Balance: ([0-9.,]+) EUR', data), try: print Decimal(re.findall(r'Balance: ([0-9.,]+) EUR', data)[0]) except: print br.follow_link(text_regex=r'Logout')
Zgodovina sprememb…
- spremenilo: jype ()
misek ::
Post mora biti z veliko, torej
-X POSTUporabi tudi
--trace -za debug. - je lahko tudi ime datoteke, kamor se zapisuje vsebina.
MrStein ::
Možno je tudi, da stran pričakuje GET request. Ker ni dejanskega primera, lahko le ugibamo.
Motiti se je človeško.
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!
Motiti se pogosto je neumno.
Vztrajati pri zmoti je... oh, pozdravljen!
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Kako narediti python "cmd line" programOddelek: Programiranje | 1598 (1021) | ragezor |
» | Python vrstica v seznamOddelek: Programiranje | 958 (841) | brodul |
» | Ubuntu 9.04->10.04 = Mail ne dela večOddelek: Operacijski sistemi | 909 (826) | Icematxyz |
⊘ | python pomočOddelek: Programiranje | 3407 (2328) | Mavrik |
» | Python razcep nizaOddelek: Programiranje | 930 (797) | Invictus |