|
You last visited: Today at 10:04
Advertisement
[AutoIt] Captcha Cracking/Breaking
Discussion on [AutoIt] Captcha Cracking/Breaking within the Coding Tutorials forum part of the General Coding category.
06/07/2010, 13:49
|
#1
|
elite*gold: 0
Join Date: Nov 2007
Posts: 32
Received Thanks: 30
|
[AutoIt] Captcha Cracking/Breaking
Hallo ELITEqVpERS 
Ich möchte euch heute in ein Themengebiet einführen, welches bereits in dem Forum aus dem ich bin, großen Anklang gefunden hat^^
Wie ihr dem Titel unschwer entnehmen könnt, geht es um Captchas. Um genauer zu sein, wie ihr solche Captchas automatisch lößt unzwar per AutoIt...
Um dem Tutorial gut folgen zu können, solltet ihr natürlich erstmal gewisses Grundverständnis ins Hinblick auf AutoIt und Programmieren mitbringen^^ Ebenfalls solltet ihr zumindest schonmal was von GDI+ gehört haben^^
In diesem Tutorial werde ich euch den bekannten "Offenen Kreis" zeigen und wie ihr ihn lößt:
Mein Tutorial ist ca 30-40 Minuten lang und auf youtube hochgeladen, weswegen ich hier eigentlich nicht noch groß Worte verlieren muss^^
Bei Fragen bin ich natürlich zur Stelle ^^
Hier hatb ihr natürlich noch die Source... aber guckt euch das Tut an, sonst versteht ihr zumindest als Noobys nicht viel davon
PHP Code:
#Include <GDIPLUS.au3>
Opt("MustDeclareVars", 1)
Local $iAnzahl, $aPosi, $sDlPfad, $iTimer
$iAnzahl = IniRead(@ScriptDir & '\captchas\captchas.ini', 'captchas', 'anzahl', 0)
DirCreate(@ScriptDir & '\captchas')
$sDlPfad = Captcha_Download()
$iTimer = TimerInit()
$aPosi = Captcha_Crack( $sDlPfad )
If $aPosi[0] <> -1 Then
IniWrite(@ScriptDir & '\captchas\captchas.ini', 'captchas_' & Captcha_GetName($iAnzahl), 'zeit', TimerDiff($iTimer))
IniWrite(@ScriptDir & '\captchas\captchas.ini', 'captchas_' & Captcha_GetName($iAnzahl), 'cracked', '1')
IniWrite(@ScriptDir & '\captchas\captchas.ini', 'captchas_' & Captcha_GetName($iAnzahl), 'X', $aPosi[0])
IniWrite(@ScriptDir & '\captchas\captchas.ini', 'captchas_' & Captcha_GetName($iAnzahl), 'Y', $aPosi[1])
EndIf
Func Captcha_Download()
Local $sName
$iAnzahl += 1
$sName = Captcha_GetName($iAnzahl)
InetGet("http://game.nemexia.de/captcha.php", @ScriptDir & '\captchas\captcha_' & $sName & '.gif', 1)
IniWrite(@ScriptDir & '\captchas\captchas.ini', 'captchas', 'anzahl', $iAnzahl)
IniWrite(@ScriptDir & '\captchas\captchas.ini', 'captchas_' & $sName, 'cracked', '0')
IniWrite(@ScriptDir & '\captchas\captchas.ini', 'captchas_' & $sName, 'zeit', '0')
Return @ScriptDir & '\captchas\captcha_' & $sName & '.gif'
EndFunc
Func Captcha_GetName($iNummer)
Local $i
For $i = StringLen($iNummer) to 5
$iNummer = '0' & $iNummer
Next
Return $iNummer
EndFunc
; Diese Funktionen cracken das captcha
Func Captcha_Crack($sPfad)
Local $hImage, $iWidth, $iHeight, $iXc, $iYc, $iPixelColor
Local $iClick[2], $aCheckedColors[1], $iChecked, $bAnalysieren
$aCheckedColors[0] = 0
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile($sPfad)
$iWidth = _GDIPlus_ImageGetWidth($hImage)
$iHeight = _GDIPlus_ImageGetHeight($hImage)
$iClick[0] = -1
$iClick[1] = -1
For $iXc = 0 to $iWidth-1
For $iYc = 0 to $iHeight-1
$iPixelColor = Hex(_GDIPlus_GetPixel($hImage, $iXc, $iYc), 6)
If Dec($iPixelColor) > 10 * 1000 * 1000 Then
$bAnalysieren = True
If $aCheckedColors[0] > 0 Then
For $iChecked = 1 To $aCheckedColors[0]
If $aCheckedColors[$iChecked] = $iPixelColor Then
$bAnalysieren = False
ExitLoop
EndIf
Next
EndIf
If $bAnalysieren Then
If Captcha_Analyse($hImage, $iXc, $iYc, $iWidth, $iHeight, $iPixelColor) Then
$iClick[0] = $iXc
$iClick[1] = $iYc
ExitLoop 2
Else
$aCheckedColors[0] += 1
ReDim $aCheckedColors[ $aCheckedColors[0] +1 ]
$aCheckedColors[ $aCheckedColors[0] ] = $iPixelColor
EndIf
EndIf
EndIf
Next
Next
_GDIPlus_Shutdown()
Return $iClick
EndFunc
Func Captcha_Analyse($hImage, $iXc, $iYc, $iWidth, $iHeight, $iColor)
Local $iPixel, $iBreite, $iFound
$iBreite = 0
$iFound = -1
Do
$iBreite += 1
$iYc = 0
Do
$iYc += 1
$iPixel = Hex(_GDIPlus_GetPixel($hImage, $iXc, $iYc), 6)
If $iColor = $iPixel Then
$iFound = -1
EndIf
Until $iYc = $iHeight-1
$iFound += 1
$iXc +=1
Until ($iBreite = $iWidth-1)
$iBreite = $iBreite - $iFound
If $iBreite > 24 And ($iBreite) < 28 Then
Return True
Else
Return False
EndIf
EndFunc
Func _GDIPlus_GetPixel($hBitmap,$X,$Y)
Local $result = DllCall($ghGDIPDLL, "int", "GdipBitmapGetPixel", "ptr", $hBitmap, "int", $X, "int", $Y, "dword*", 0)
If @error Then Return SetError(1,0,0)
Return SetError($result[0],1,$result[4])
EndFunc
~ MfG AMrK~
|
|
|
06/08/2010, 15:09
|
#2
|
elite*gold: 966
Join Date: Apr 2010
Posts: 1,105
Received Thanks: 681
|
nice tut. Ich brauch´s zwar nicht, aber man sieht, dass du dir Mühe gegeben hast. Allerding solltest du noch die GDIPLUS.au3 uploaden, da man ja ohne sie nichts anfangen kann.
|
|
|
06/08/2010, 15:22
|
#3
|
elite*gold: 0
Join Date: Nov 2007
Posts: 32
Received Thanks: 30
|
Quote:
Originally Posted by Jeoni
Allerding solltest du noch die GDIPLUS.au3 uploaden, da man ja ohne sie nichts anfangen kann.
|
Die GDIPlus.au3 Ist standardmäßig bei Autoit mit dabei  einfach per <GDIPlus.au3> includen fertig^^ (findeste im Ordner: C:\Programme\Autoit3\Inclueds\GdiPlus.au3^^)
|
|
|
07/22/2010, 11:10
|
#4
|
elite*gold: 0
Join Date: Dec 2009
Posts: 572
Received Thanks: 90
|
ist das ganze auch möglich mit Zahlen bzw mit Worten?
|
|
|
07/22/2010, 14:29
|
#5
|
elite*gold: 5
Join Date: Mar 2008
Posts: 469
Received Thanks: 45
|
Quote:
Originally Posted by Junkfood ftw
ist das ganze auch möglich mit Zahlen bzw mit Worten?
|
das interessiert mich auch. da bei "meim" captcha entweder 1, 2 oder 3 buchstaben sind.. ist halt ein randomcaptcha.
|
|
|
07/22/2010, 21:31
|
#6
|
elite*gold: 0
Join Date: Dec 2009
Posts: 335
Received Thanks: 1,849
|
Mich würde interessieren, wie das Cracken bei Buchstaben o./u. Zahlen aussieht.
|
|
|
07/24/2010, 11:45
|
#7
|
elite*gold: 0
Join Date: Oct 2009
Posts: 4,851
Received Thanks: 3,417
|
nett  gehen auch Captcha codes?
#added to list
|
|
|
08/06/2010, 04:58
|
#8
|
elite*gold: 0
Join Date: Mar 2008
Posts: 31
Received Thanks: 3
|
Das würtde mich auch interessieren
|
|
|
08/06/2010, 08:15
|
#9
|
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,878
|
Quote:
Originally Posted by Jusikid
nett  gehen auch Captcha codes?
#added to list
|
Captcha Codes gehen theoretisch auch, aber nicht mit diesem Code!
Außerdem denke ich, dass AutoIt einfach zu langsam fürs Cracken von Codes ist.
|
|
|
 |
Similar Threads
|
Breaking Bad Seasons
09/10/2010 - Movies & Series - 0 Replies
I found Breaking Bad Seasons when it was in the middle of season two, and when I saw my first episode I was hooked like a junkie (no pun intended). Acting, writing, listening, film, all parts of the show makes it one of the most charming show ever. Vince Gilligan (creator) reached a pure genius when it came up with ideas and stories on this show, if you’re not familiar with it, then start a season and then, of course, the period of two and then take an unforgettable season and then watch the...
|
[HELP]Chars Breaking
09/21/2008 - CO2 Private Server - 16 Replies
Friend list get completely erased
Hotkeys get removed
2ice so far a char n the database, all there info would get erased like
the name, lvl, skill, equips, etc...
but the char log on id wouldnt
Any ideas wuts causing all that
|
Breaking the Ice
06/05/2008 - Say Hello - 0 Replies
Hello all,
It's been a while since I've visited ElitePVPers. I hope to hold good discussions with everyone and maybe learn something new.
|
Breaking IN to bot jail
02/01/2008 - Conquer Online 2 - 34 Replies
right. so there i was, mining in phoenix castle when i found a gem. rushed back to put it in warehouse then jumped back to the exact same 'lucky spot' where i found it, started mining, and within a few seconds i was in bot jail. knowing i didn't do anything wrong is frustrating, especially since this isn't an isolated incident.
now i need to get another character to jail with 100k to bust him out, but doing this seems impossible seeing as most of the newer macros/bots are undetectable.
so...
|
All times are GMT +1. The time now is 10:05.
|
|