Ik zit nu al een tijdje te priegelen met een stukje Java-script dat kan inloggen op een willekeurig vBulletin forum.
De bijbehorende broncode voor de login-form op een vBulletin forum is als volgt:
De code van het Java script is als volgt:
Ik heb al gezocht naar een oplossing, en heb tot zoverre twee links gevonden waarin hetzelfde probleem voorgelegd werd bij anderen maar vervelend genoeg geen oplossing als resultaat had. Ik zal deze hier plaatsen zodra ik ze weer gevonden heb.
Mijn vraag is: kan iemand me uitleggen hoe ik de regel na String content kan aanpassen zodat het in overeenstemming is met de bovenstaande LOG-IN script van een vBulletin forum?
De bijbehorende broncode voor de login-form op een vBulletin forum is als volgt:
HTML: LOG-IN FORM op een vBulletin-forum
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| <!-- login form --> <form action="login.php?do=login" method="post" onsubmit="md5hash(vb_login_password, vb_login_md5password, vb_login_md5password_utf, 0)"> <script type="text/javascript" src="clientscript/vbulletin_md5.js?v=384"></script> <table cellpadding="0" cellspacing="3" border="0"> <tr> <td class="smallfont" style="white-space: nowrap;"><label for="navbar_username">Gebruikersnaam</label></td> <td><input type="text" class="bginput" style="font-size: 11px" name="vb_login_username" id="navbar_username" size="10" accesskey="u" tabindex="101" value="Gebruikersnaam" onfocus="if (this.value == 'Gebruikersnaam') this.value = '';" /></td> <td class="smallfont" nowrap="nowrap"><label for="cb_cookieuser_navbar"><input type="checkbox" name="cookieuser" value="1" tabindex="103" id="cb_cookieuser_navbar" accesskey="c" checked="checked" />Onthoudt gegevens</label></td> </tr> <tr> <td class="smallfont"><label for="navbar_password">Wachtwoord</label></td> <td><input type="password" class="bginput" style="font-size: 11px" name="vb_login_password" id="navbar_password" size="10" tabindex="102" /></td> <td><input type="submit" class="button" value="Log in" tabindex="104" title="Type hier je gebruikersnaam en wachtwoord om in te loggen!" accesskey="s" /></td> </tr> </table> <input type="hidden" name="s" value="" /> <input type="hidden" name="do" value="login" /> <input type="hidden" name="vb_login_md5password" /> <input type="hidden" name="vb_login_md5password_utf" /> </form> <!-- / login form --> |
De code van het Java script is als volgt:
Java: CONSTANTEN:
1
2
3
4
5
6
7
| String POST_CONTENT_TYPE = "application/x-www-form-urlencoded"; String LOGIN_ACTION_NAME = "login"; String LOGIN_USER_NAME_PARAMETER_NAME = "vb_login_username"; String LOGIN_PASSWORD_PARAMETER_NAME = "vb_login_password"; String LOGIN_USER_NAME = "éénofanderegebruikersnaam"; String LOGIN_PASSWORD = "methetbijbehorendewachtwoord"; String TARGET_URL = "http://www.eenvBulletinforum.nl"; |
Java: MAIN:
1
2
3
4
5
| public void httpPostLogin () { String urlEncodedContent = preparePostContent(LOGIN_USER_NAME, LOGIN_PASSWORD); ... ... } |
Java: HTTPPOST-VOORBEREIDEN
1
2
3
4
5
6
7
8
| private String preparePostContent(String loginUserName, String loginPassword) throws UnsupportedEncodingException { String encodedLoginUserName = URLEncoder.encode(loginUserName, "UTF-8"); String encodedLoginPassword = URLEncoder.encode(loginPassword, "UTF-8"); String content = "login.php?do=" + LOGIN_ACTION_NAME +" &" + LOGIN_USER_NAME_PARAMETER_NAME +"=" + encodedLoginUserName + "&" + LOGIN_PASSWORD_PARAMETER_NAME + "=" + encodedLoginPassword; return content; } |
Wat is nu het probleem?
Het probleem ligt bij String content in HTTPPOST-VOORBEREIDEN. Het is namelijk niet geoptimaliseerd voor een vBulletin forum! Die hele regel achter String content moet aangepast worden zodat het script een verbinding kan aanleggen met een vBulletin forum om in te loggen. Maar dat gaat echt mijn pet te boven. Vooral omdat er ook md5hash in het spel zit (zie LOG-IN FORM).Ik heb al gezocht naar een oplossing, en heb tot zoverre twee links gevonden waarin hetzelfde probleem voorgelegd werd bij anderen maar vervelend genoeg geen oplossing als resultaat had. Ik zal deze hier plaatsen zodra ik ze weer gevonden heb.
Mijn vraag is: kan iemand me uitleggen hoe ik de regel na String content kan aanpassen zodat het in overeenstemming is met de bovenstaande LOG-IN script van een vBulletin forum?