[AutoIt] Loginsystem?

11/24/2011 21:33 MrOwned#1
Heey

ich hätt dort mal ne Frage zu AutoIt ich hab nähmlich ein Hack gecodet für nen Egoshooter... ich möchte so ein Loginsystem machen womit man sich mit seinen Acc daten von meinen Forum einloggen muss. Wenn man eingeloggt ist das man erst dann diesen hack starten kann.

Tutorial würd reichen oder gleich das ganze Script
11/24/2011 21:37 iXDe#2
Welche Forensoftware wird genutzt, bzw kanns tdu die Addresse schicken?
11/24/2011 21:45 MrOwned#3
MyBB [Only registered and activated users can see links. Click Here To Register...]
11/24/2011 21:51 Logtetsch#4
Du kannst glaub ich im Quellcode/ test deines Forums untersuchen, ob du eingeloggt bist oder nicht. Dann kannst du das ganze in Autoit mit
PHP Code:
BinaryToString 
und
PHP Code:
_StringBetween 
nachprüfen.
KillerDeluxe hat mal so ein HWID Script gepostet. Ist glaub ich auch pinned.
Dort kannst du die einige Sachen abgucken bzw. einfach nur anschauen um es besser zu verstehen.
11/24/2011 21:56 MrOwned#5
Also bin recht anfänger in AutoIt also bitte n bischn anfänger freundlich schreiben ;)

Code:
#RequireAdmin
#NoTrayIcon

$inputUsername = InputBox("Geben sie ihren Benutzernamen ein","Benutzername:")
$inputPassword = InputBox("Geben sie ihr Passwort ein","Passwort:","","*")

If $inputUsername = "MrOwned" And $inputPassword = "1234" Then
	MsgBox(0,"Erfolgreich eingeloggt","Sie haben sich erfolgreich eingeloggt!")
Else
	MsgBox(0,"Login fehlgeschlagen!","Username und Passwort sind falsch!")
EndIf
So hab ich es zurzeit :( Nur jetz muss ich es umscripten das er zb die Daten vom Forum nimmt und dort brauch ich hilfe
11/24/2011 22:29 iXDe#6
Ich hab mal ein bisschen versucht und es gibt bisher ein Problem:

Es wird beim Login bei MyBB ein Captcha verlangt _> muss eingegeben werden vom User. Bin grad noch weiter am probieren.
11/25/2011 00:46 ChangeMeシ#7
Sollten dei Account Daten in einer MySQL Datenbank gespeichert sein und auch dir verfügbar, kannst du es über php machen.
Du sendet über AutoIt deine Daten an php und der sagt dir ob der Account mit dem Passwort zusammengehört.

ChangeMe
11/25/2011 06:54 iXDe#8
.... was jedoch Sicherheitsrisiken mit sich bringt. (>SQL Injektionen[wenn nicht Escaped wird], Bruteforce wird damit leicht gemacht)
11/25/2011 08:33 MrOwned#9
Ich kann auch ein neues Forum machen mit anderer Foren software das mit MyBB war nur auf schnell jetzt
11/25/2011 15:54 ChangeMeシ#10
Nunja, wenn du die Möglichkeit hast deine Forenmember in einer MySQL Datenbank zu speichern, dann kannst du es wie folgt machen.

db_config.php
PHP Code:
<?php
$host 
"localhost";
// Nicht verändern 

$user "USERNAME BEI phpMyAdmin";
// Verändern! - Hier müsst ihr den Username eingeben

$pass "PASSWROT BEI phpMyAdmin";
// Verändern! - Hier müsst ihr das Passwort eingeben

$dbase "DATENBANKNAME";
// Verändern! - Hier müsst ihr den Namen der Datenbank eingeben 
?>

login.php
PHP Code:
<?php
// PHP-Code Beginn

require_once('db_config.php');
// Die Datenbankverbindungsdaten einbinden, damit die Funktion "mysql_connect" funktioniert


mysql_connect($host$user$pass);
// Öffnet eine Verbindung zu dem MySql-Server

mysql_select_db($dbase);
// Wählt die Datenbank $dbase aus

$Benutzername mysql_real_escape_string($HTTP_GET_VARS['benutzername']);
// In der Variable steht der String der in der Url nach "benutzername=" übermittelt wurde

$Passwort mysql_real_escape_string($HTTP_GET_VARS['passwort']);
// In der Variable steht der String der in der Url nach "passwort=" übermittelt wurde


    
$result mysql_query("SELECT * FROM DATENBANKNAME WHERE Benutzername='" $Benutzername "'");
    
// Sendet die Anfrage an die MySql-DB: "Wähle alle Daten aus der Tabelle User_Daten wo der Benutzername gleich $Benutzername ist"
    // !!! Achtung !!! - Habt ihr vorher den Namen der Tabelle verändert müsst ihr logischerweise auch den neuen Namen verwenden

    
$row mysql_fetch_row($resultMYSQL_ASSOC);
    
// mysql_fetch_row($result) gibt ein Array zurück mit allen Daten aus der Spalte in der der Benutzername gleich $Benutzername ist

    
if ($row)
    
// Wenn ein Benutzername gefunden wurde
    
{
        
$Dbmd5Passwort $row["Passwort"];

        if (
md5($Passwort) == $Dbmd5Passwort)
        
// wenn das PAsswort der eingabe dem Passwort in der MySQL Datenbank entspricht, dann sende eine 1
                
{
                echo 
1;
               }
        else
        
// wenn das Passwort nicht stimmt, dann gebe eine 2 aus
            
{
            echo 
2;
            }
    }
    else
    
// wenn der Benutzername nicht registriert ist, gebe eine 0 aus
    
{
        echo 
0;
    }
?>
Und in AutoIt machst du nun folgendes:
GUI
PHP Code:
#region ### START Koda GUI section ### Form=LOGIN
$loginbox GUICreate("Fenster"299169326162)
$logingroup GUICtrlCreateGroup("  Login  "88281153)
$id GUICtrlCreateLabel("Dein Benutzername:"324010017)
$idinput GUICtrlCreateInput(""1444012121)
$pw GUICtrlCreateLabel("Dein Passwort:"32727517)
$pwinput GUICtrlCreateInput(""1447212121$ES_PASSWORD)
$login GUICtrlCreateButton("Einloggen"1681127525$WS_GROUP)
$registeropen GUICtrlCreateButton("Registrieren"321127525$WS_GROUP)
GUICtrlCreateGroup("", -99, -9911)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ### 

While Schleife
PHP Code:
While 1
    $msg 
GUIGetMsg(1)
    Switch 
$msg[0]
        Case 
$login
            $sBenutzername 
GUICtrlRead($idinput)
            
$sPasswort GUICtrlRead($pwinput)
            If 
$sBenutzername <> "" And $sPasswort <> "" Then Wenn die eingaben nciht leer sinddann führe die Funktion _Login durch
                
Switch _Login($sBenutzername$sPasswort)
                    Case 
1
                        MsgBox
(48"Info""Erfolgreich eingeloggt!")
                    Case 
2
                        MsgBox
(16"Error""Passwort ist falsch!")
                    Case 
0
                        MsgBox
(16"Error""Benutzername nicht vohanden!")
                EndSwitch
            Else
                
MsgBox(48"Info""Bitte einen Bentzernamen/Passwort angeben!")
            EndIf
        Case 
$GUI_EVENT_CLOSE
            _Save
()
            Exit
    EndSwitch
WEnd 
_Login Func
PHP Code:
Func _Login($sBenutzername ""$sPasswort "")
    
$iRValue _INetGetSource("URL/login.php?benutzername=" $sBenutzername "&passwort=" $sPasswort)
    Switch 
$iRValue
        
Case 0
            
Return 0
        
Case 1
            
Return 1
        
Case 2
            
Return 2
    
EndSwitch
EndFunc 

Viel Spaß damit!
ChangeMe
11/25/2011 16:11 MrOwned#11
Hab dir ne Nachricht geschrieben blicke da nicht so durch ;)
11/25/2011 22:24 ChangeMeシ#12
An sich ist es alles genau beschrieben ôO

db_config steht alles so was du machen musst!

login.php
Ändere DATENBANKNAME in den Namen deiner Datenbank

_Login Func
Gib den Link zu login.php auf dem Webspace wo deine MySQL Datenbank ist.

Login.php und db_config.php müssen in dem selber Verzeichnis sein.

ChangeMe
11/25/2011 22:52 MrOwned#13
Ich probiers mal