Outdated!
Diese Version ist dedected, aber mit dem Code könnt ihr es ja wieder updaten.
Okay, die sind mir anscheinend auf den Fersen und iwi werden allen emails die ich nehme sofort gesperrt....
Ist nichts tolles und auch noch nicht sehr benutzer freundlich, aber wenn es einer brauchen kann hier:
#Email-bestätigung hinzugefügt...
#Source Code published
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Danke an SEuBo & @night@
Code:
#include <GUIConstantsEx.au3>
#include <EditConstants.au3>
#include <GDIPlus.au3>
#include <WinHTTP.au3>
#include <IE.au3>
#Include <String.au3>
Global $oForm, $oIE, $oQuery4, $captcha, $sub = 0,$o10m
$eRand = Random(50000,50000000,1)
$emailRand = $eRand&"@mailinator.com"
$email = $emailRand
Opt("GUIOnEventMode", 1)
InetGet("http://img263.imageshack.us/img263/626/logohkn.jpg",@TempDir & "logo.jpg")
$hGUI999 = GUICreate("G4m3Punks.0rg | Account Creator", 260, 378)
GUISetBkColor(0xFFFF00)
GUISetState()
GUISetOnEvent($GUI_EVENT_CLOSE, "_OnEventHandler")
$gplogo = GUICtrlCreatePic(@TempDir & "logo.jpg",20,0,0,0)
GUICtrlSetCursor ($gplogo, 0)
GUICtrlSetOnEvent($gplogo,"gp")
$Group1 = GUICtrlCreateGroup("Account Daten", 8, 70, 241, 90)
GUICtrlCreateLabel("Username:", 15,86, 50,12)
$Input1 = GUICtrlCreateInput("", 70, 84, 173, 21)
GUICtrlCreateLabel("Passwort:", 15,110, 50, 12)
$Input2 = GUICtrlCreateInput("", 70, 108, 173, 21)
GUICtrlCreateLabel("E-mail:", 15,135, 28, 12)
$Input3 = GUICtrlCreateInput("", 70, 132, 173, 21)
$checkb = GUICtrlCreateCheckbox("",50,135,15,15)
GUICtrlSetOnEvent($checkb,"checkbox")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Captcha", 0, 168, 257, 110)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Absenden", 16, 352, 225, 25)
GUICtrlSetOnEvent($Button1, "_OnEventHandler")
$Input4 = GUICtrlCreateInput("Captcha", 16, 252, 217, 21, BitOR($ES_CENTER, $ES_AUTOHSCROLL))
$Group3 = GUICtrlCreateGroup("Status", 16, 280,217, 65)
$Label1 = GUICtrlCreateLabel("Keine Fehler", 96, 290, 100, 50)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
GUICtrlSetState($Input3, $GUI_DISABLE)
While 1
Sleep(1000)
WEnd
Func _OnEventHandler()
Switch @GUI_CtrlId
Case -3
FileDelete(@TempDir & "logo.bmp")
Exit
Case $Button1
_Register($sub)
EndSwitch
EndFunc ;==>_OnEventHandler
Func _Register(ByRef $iGotCaptcha)
Local Static $hSession, $hConnect
Local $sHTML, $hRequest, $bRecv, $hFile
If StringIsAlNum (GUICtrlRead($Input1)) = 0 Then
GUICtrlSetData($Label1,"Benutzername darf nur Ziffern von 0-9 und Zeichen von A-Z enthalten")
return
Else
GUICtrlSetData($Label1,"Benutzername: Okay!")
EndIf
If StringLen (GUICtrlRead($Input1)) < 5 or StringLen (GUICtrlRead($Input1)) > 16 Then
GUICtrlSetData($Label1,"Es sind nur 5-16 Zeichen im Benutzernamen erlaubt!")
return
Else
GUICtrlSetData($Label1,"Benutzername: Okay!")
Sleep(1000)
EndIf
If GUICtrlRead($checkb) = $GUI_UNCHECKED Then
GUICtrlSetData($Label1,"Email: Okay!")
$email = $emailRand
GUICtrlSetData($Input3,$emailRand)
Sleep(1000)
Else
If StringRegExp(GUICtrlRead($Input3),"\w+@\w+.\w+",2) = 1 Then
GUICtrlSetData($Label1,"Ungültige Email!")
return
Else
GUICtrlSetData($Label1,"Email: Okay!")
$email = GUICtrlRead($Input3)
Sleep(1000)
EndIf
EndIf
if StringIsAlNum (GUICtrlRead($Input2)) = 0 Then
GUICtrlSetData($Label1,"Passwort darf nur Ziffern von 0-9 und Zeichen von A-Z enthalten. ")
Return
EndIf
If StringIsAlpha(GUICtrlRead($Input2)) = 1 or StringIsInt(GUICtrlRead($Input2)) = 1 Then
GUICtrlSetData($Label1,"Passwort muss mindestens eine Zhal und einen Buchstaben enthalten.")
return
Else
GUICtrlSetData($Label1,"Passwort: Okay!")
EndIf
If StringLen (GUICtrlRead($Input2)) < 8 or StringLen (GUICtrlRead($Input2)) > 16 Then
GUICtrlSetData($Label1,"Es sind nur 8-16 Zeichen im Passwort erlaubt!")
return
Else
GUICtrlSetData($Label1,"Passwort: Okay!")
Sleep(1000)
EndIf
If $iGotCaptcha Then
$sHTML = _WinHTTPRequest($hConnect, "/user/register", "reg%5Busername%5D=" & GUICtrlRead($Input1) & "®%5Bemail%5D=" & $email & "®%5Bpassword%5D=" & GUICtrlRead($Input2) & "®%5Bagb%5D=1&captcha=" & GUICtrlRead($Input4) & "&SubmitRegisterForm=Anmelden")
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hSession)
FileDelete(@TempDir & "\~captcha.png")
FileDelete(@TempDir & "\~captcha.jpg")
_d($sHTML)
If GUICtrlRead($checkb) = $GUI_UNCHECKED Then
Mail()
Else
MsgBox(0,"Nostale Account Creator","Bestätigungsmail verschickt! Name: " & GUICtrlRead($Input1) & " Email: " & $email & " Passwort: " & GUICtrlRead($Input2) & "")
Exit
EndIf
Else
$hSession = _WinHttpOpen()
$hConnect = _WinHTTPConnect($hSession, "www.nostale.de")
_WinHTTPRequest($hConnect, "/user/register")
_WinHTTPRequest($hConnect, "/user/register", "reg%5Busername%5D=" & GUICtrlRead($Input1) & "®%5Bemail%5D=" & GUICtrlRead($Input3) & "®%5Bpassword%5D=" & GUICtrlRead($Input2) & "®%5Bagb%5D=1&SubmitRegisterForm=Anmelden")
;Captcha binär herunterladen
$hRequest = _WinHttpOpenRequest($hConnect, "GET", "/captcha/create", "HTTP/1.1", "http://www.nostale.de/user/register")
_WinHttpSendRequest($hRequest)
_WinHttpReceiveResponse($hRequest)
If _WinHttpQueryDataAvailable($hRequest) Then
Do
$bRecv &= _WinHttpReadData($hRequest, 2)
Until @error
EndIf
_WinHttpCloseHandle($hRequest)
;In Datei Speichern
$hFile = FileOpen(@TempDir & "\~captcha.png", 18)
FileWrite($hFile, $bRecv)
FileClose($hFile)
;zu jpg umwandeln
_GDIPlus_Startup()
_GDIPlus_ImageSaveToFile(_GDIPlus_ImageLoadFromFile(@TempDir & "\~captcha.png"),@TempDir & "\~captcha.jpg")
_GDIPlus_Shutdown()
GUICtrlCreatePic(@TempDir & "\~captcha.jpg",8,190,0,0)
$iGotCaptcha = 1
EndIf
EndFunc ;==>_Register
; #FUNCTION# ======================================================================================
; Name ..........: _WinHTTPRequest()
; Description ...: Easier use of WinHTTP. Handles your HTTP/HTTPs Request
; Syntax ........: _WinHTTPRequest($hConnect, $sSite[, $sPost = ""[, $sReferer = ""[, $sExtraHeader = ""[, $fUseHTTPS = False[, $sAcceptType = ""[, $fGetHeaderOnly = False]]]]]])
; Parameters ....: $hConnect - Handle returned from _WinHTTPConnect()
; $sSite - Page to send the request to, starting with a "/"
; $sPost - [optional] Postdata to send. If this parameter is used, _WinHTTPRequest will do a POST instead of GET (default:"")
; $sReferer - [optional] Referer to use. Use the format www.yourpage.com. (default:"")
; $sExtraHeader - [optional] Use this parameter to add certain Infos to your Request Headers (default:"")
; $fUseHTTPS - [optional] This flag indicates wether you want to use HTTPs or not (default:False)
; $sAcceptType - [optional] See _WinHTTPOpenRequest() (default:"")
; $fGetHeaderOnly - [optional] This flag indicates wether you want to retrieve Headers or not. (default:False)
; |False - Do not recieve Headers - Just get the Body
; |True - Recieve Headers only
; |-1 - Get both, Headers and Body
; Return values .: Success - Returns Body and/or Header, depending on $fGetHeaderOnly
; Failure - Returns 0
; Author ........: SEuBo
; Remarks .......: If you get an empty String as return, check the Header for a 302 Message from the server
; Example .......: Yes
; #include <WinHTTP.au3>
; #include "WinHTTPRequest.au3"
; $hSession = _WinHttpOpen() ; Open Session
; $hConnect = _WinHTTPConnect($hSession,"www.google.de") ; Connect to host
; _WinHTTPRequest($hConnect,"/imghp") ; GET-Request
; _WinHttpCloseHandle($hConnect) ; Close Connect
; _WinHttpCloseHandle($hSession) ; Close Session
; =================================================================================================
Func _WinHTTPRequest($hConnect, $sSite, $sPost = "", $sReferer = "", $sExtraHeader = "", $fUseHTTPS = False, $sAcceptType = "", $fGetHeaderOnly = False)
;Author: SEuBo
Local $hRequest, $sHTML, $sMode = "GET", $sOptional = $WINHTTP_NO_REQUEST_DATA, $sHeaders = $WINHTTP_NO_ADDITIONAL_HEADERS, _
$sAcceptTypes = $WINHTTP_DEFAULT_ACCEPT_TYPES, $iFlags = $WINHTTP_FLAG_ESCAPE_DISABLE, $sReferers = $WINHTTP_NO_REFERER
If $sPost <> "" Then
$sMode = "POST"
$sOptional = $sPost
$sHeaders = "Content-Type: application/x-www-form-urlencoded" & @CRLF
EndIf
If $sReferer Then $sReferers = $sReferer
If $sExtraHeader Then $sHeaders = $sExtraHeader
If $fUseHTTPS Then $iFlags = $WINHTTP_FLAG_SECURE
If $sAcceptType Then $sAcceptTypes = $sAcceptType
ConsoleWrite("WinHTTP Request <<< " & $sMode & " >>> ===========> " & $sSite & @TAB & @TAB & $sPost & @CRLF)
$hRequest = _WinHttpOpenRequest($hConnect, $sMode, $sSite, "HTTP/1.1", $sReferers, $sAcceptTypes, $iFlags) ; Anfrage an die Seite stellen
_WinHttpSendRequest($hRequest, $sHeaders, $sOptional) ; Anfrage senden.
_WinHttpReceiveResponse($hRequest) ; Warte auf Antwort des Servers
If _WinHttpQueryDataAvailable($hRequest) Then
If $fGetHeaderOnly Then
$sHTML &= _WinHttpQueryHeaders($hRequest)
If $fGetHeaderOnly > -1 Then _WinHttpCloseHandle($hRequest)
If $fGetHeaderOnly > -1 Then Return $sHTML
$sHTML &= @CRLF & @CRLF
EndIf
Do
$sHTML &= _WinHttpReadData($hRequest) ; Antwort aus dem Buffer lesen.
Until @error ; bis ein fehler auftritt (übertragung abgeschlossen)
_WinHttpCloseHandle($hRequest)
Return $sHTML
EndIf
Return 0
EndFunc ;==>_WinHTTPRequest
Func _d($sHTML)
FileDelete(@TempDir & "\~debug.html")
FileWrite(@TempDir & "\~debug.html", $sHTML)
ShellExecute(@TempDir & "\~debug.html")
EndFunc ;==>_d
#cs
Func errorCheck()
$hDownload = InetRead("http://www.nostale.de/user/register")
$miep = BinaryToString($hDownload)
$error_string = StringRegExp ($miep, '<div class="error">(.*?)</div>' , 1 )
EndFunc
#ce
Func gp()
ShellExecute("www.**************")
EndFunc
Func checkbox()
If GUICtrlRead($checkb) = $GUI_UNCHECKED Then
GUICtrlSetState($Input3, $GUI_DISABLE)
Else
GUICtrlSetState($Input3, $GUI_ENABLE)
EndIf
EndFunc
Func Mail()
$IE = _IECreate("http://www.mailinator.com/maildir.jsp?email="&$emailRand,0,0)
GUICtrlSetData($Label1,"Browser geöffnet!")
sleep(1000)
Do
Sleep (5000)
_IEAction($IE,"refresh")
$Text = _IEBodyReadText($IE)
GUICtrlSetData($Label1,"Warte auf email!")
Until StringRegExp($Text, "Willkommen bei NosTale!")
GUICtrlSetData($Label1,"Link_1 gefunden!")
sleep(1000)
$Text = BinaryToString(InetRead("http://www.mailinator.com/maildir.jsp?email="&$emailRand,1))
$msgid = _StringBetween($Text,"href=/displayemail.jsp?email="&$eRand&"&msgid=",">Willkommen bei ")
_IENavigate($IE,"http://www.mailinator.com/displayemail.jsp?email="&$eRand&"&msgid="&$msgid[0])
_IELoadWait($IE)
GUICtrlSetData($Label1,"Link_2 gefunden!")
$Text2 = _IEBodyReadText($IE)
sleep(1000)
$Link = StringRegExp($Text2,"http://www\.nostale\.de/user/authenticated/\w+/\w+",3)
GUICtrlSetData($Label1,"Bestätigunglink gefunden!")
sleep(1000)
_IEQuit($IE)
$akti = _IECreate($Link[0],0,1)
GUICtrlSetData($Label1,"Account automatisch aktiviert!")
sleep(1000)
MsgBox(0,"Nostale Account Creator","Account Aktiviert! Name: " & GUICtrlRead($Input1) & " Email: " & $email & " Passwort: " & GUICtrlRead($Input2) & "")
Exit
EndFunc