rub-netz-login.py[Updated]

Wer an der Ruhr-Uni Bochum studiert, der kennt wohl das Procedere, um ins Internet zu kommen: Eine Webseite, auf der man seine Credentials eingibt…
Für den klassischen Unixer ist sowas nervig, da das nicht einfach von der commandline läuft. Deshalb habe ich mal mit Python und m2crypto ein nettes kleines Programm gefriemelt, das nicht nur eine SSL-Verbindung aufbaut um den Login zu machen, sondern auch die Zertifikatskette überprüft, damit kein Man-in-the-Middle-Angriff auf die Benutzerdaten so einfach gefahren werden kann.
Das Tool ist natürlich Freie Software und soll nicht bloß ITS’lern die Automatisierung (automatischer Router-Login…) erleichtern.
Bonus: Das Tool unterstützt die Option “-q”!

Leider wird das Nutzungsstatistik-Bild noch nicht abgeholt, aber das kommt vielleicht noch.

Neues Feature implementiert: Speichern des Nutzungsstatistik-Bildes. Damit kann das Tool alles, was man auch per Webseite machen kann, nur halt von der Kommandozeile.

Hier also schlußendlich der Link: rub-netz-login.py

Viel Spaß damit!

3 comments for “rub-netz-login.py[Updated]

  1. pepe
    30. November 2009 at 02:09

    Helden bei der Arbeit…

    wget -q -O – –post-data ‘password=’$pass’&username=’$user’&action=’$act $url |html2text – |grep “Auth\|erfolg”|awk ‘{print $1,$2}’

    Und jetz komm mir keiner mit der tollen Traffic-statistik…

  2. mu
    30. November 2009 at 10:43

    Ich finde es toll dass du der ganzen Welt deine Passwörter mitteilen willst. Ja, wget kann https-Verbindungen mit Zertifikatsüberprüfung machen, aber a) nicht jedes wget linkt gegen eine SSL-lib b) macht dein Schnipsel die Überprüfung nicht bei der falschen URL c) darf ein Nutzer die URL selber herausfinden (Benutzerfreundlichkeit und so…) d) hast du überhaupt keine Doku (welche action?)

    Mir war natürlich klar, dass man sich das mit $Programmen auf der Kommandozeile irgendwie in Stücken zusammenfriemeln kann, nur nicht jeder mag eine interaktive Benutzerumgebung als Programmiersprache oder setzt sich dran mal kurz was zu basteln.

    Poste gerne eine vollständigere Version die genauso Benutzerfreundlich ist (und am besten auch die Features bietet), dann darfst du ohne gegengemopper “Helden bei der Arbeit” dranheften (auch wenn das immer noch ein Zeichen von unreife ist). Gerne auch fertig einsetzbar und ohne Tonnen an Umgebungsvariablen (also mit getopt-style Parser), mit Fehlerbehandlung, mit Überprüfung, ob das wget SSL kann…

    Mach’s besser!
    Hauptsache: Mach was, wenn du gescheit genug bist was zu machen. “Intelligent und faul” ist von “nicht intelligent, nur faul” von außen schwer zu unterscheiden.

  3. 6. Dezember 2009 at 23:47

    Und hier mal, was ich in perl gemacht hatte:

    use LWP 5.64;
    my $l = LWP::UserAgent->new()->post(‘https://login.rz.rub.de/cgi-bin/laklogin’,[username => $ARGV[1],password => $ARGV[2],action => $ARGV[0],]);

    login.pl Login userid password
    oder
    login.pl Logout

Comments are closed.