Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?PHP
- /* ForumConnect by Oscar @ Game-Tuts.com */
- $salt = "MaK9d"; //For protection against server emulation, change this.
- $path = "./"; //Path to your forum relative to this PHP file, only change if this file is not in your forum folder.
- /**************************************
- ******** Don't edit below this ********
- **************************************/
- $user = addslashes(base64_decode($_GET['user']));
- $pass = addslashes(base64_decode($_GET['pass']));
- $rid = $_GET['rid'];
- $sha1rid = sha1($rid.sha1($salt));
- if($_GET['act'] == "test"){
- echo "ForumConnect by Oscar";
- exit();
- }
- if($user == ""){
- die("No username given.");
- }
- elseif($pass == ""){
- die("No password given.");
- }
- elseif($rid == ""){
- die("No random ID given.");
- }
- $indexContents = file_get_contents($path."index.php")or die("Can't open 'index.php'");
- if(doesContain($indexContents, "$forum_version = 'SMF 1.1")){
- $forum = "smf1";
- verifySmf();
- }
- elseif(doesContain($indexContents, "$forum_version = 'SMF 2.")){
- $forum = "smf2";
- verifySmf();
- }
- elseif(doesContain($indexContents, "vBulletin 3") && doesContain($indexContents, "| http://www.vbulletin.com/license.html")){
- $forum = "vb3";
- verifyvB();
- }
- elseif(doesContain($indexContents, "vBulletin 4") && doesContain($indexContents, "| http://www.vbulletin.com/license.html")){
- $forum = "vb4";
- verifyvB();
- }
- elseif(doesContain($indexContents, "version 2.") && doesContain($indexContents, "@package InvisionPowerBoard")){
- $forum = "ipb2";
- verifyIPB2();
- }
- elseif(doesContain($indexContents, "IP.Board v3.") && doesContain($indexContents, "@package IP.Board")){
- $forum = "ipb3";
- verifyIPB3();
- }
- else{
- die("Forum type could not be determined.");
- }
- ### SMF = sha1(toLower(username).password) ###
- function verifySmf(){
- global $user, $pass;
- require $path."Settings.php";
- $sha1Pass = sha1(strtolower($user).$pass);
- mysql_connect($db_server, $db_user, $db_passwd);
- mysql_select_db($db_name);
- $result = mysql_query("SELECT * FROM `smf_members` WHERE `passwd` = '$sha1Pass'");
- if($result == false){
- prntOutput(false);
- exit;
- }
- $row = mysql_fetch_row($result)or die(prntOutput(false));
- if(mysql_num_rows($result) == 1){
- $userGroup = $row[4];
- $userName = $row[1];
- prntOutput(true, $userGroup, $userName);
- }
- else{
- prntOutput(false);
- }
- }
- ### vBulletin 3 & 4 = md5(md5(password).salt) ###
- function verifyVb(){
- global $user, $pass;
- require $path."includes/config.php";
- mysql_connect($config['MasterServer']['servername'].":".$config['MasterServer']['port'], $config['MasterServer']['username'], $config['MasterServer']['password']);
- mysql_select_db($config['Database']['dbname']);
- $result = mysql_query("SELECT * FROM `".$config['Database']['tableprefix']."user` WHERE `username` = '$user'");
- if($result == false){
- prntOutput(false);
- exit;
- }
- $row = mysql_fetch_row($result)or die("False:0:False:0");
- $md5Pass = md5(md5($pass).$row[48]);
- if($row[5] == $md5Pass){
- $userGroup = $row[1];
- $userName = $row[4];
- prntOutput(true, $userGroup, $userName);
- }
- else{
- prntOutput(false);
- }
- }
- ### IPB 2 md5(md5(salt).md5(password)) ###
- function verifyIPB2(){
- global $user, $pass;
- require $path."conf_global.php";
- mysql_connect($INFO['sql_host'], $INFO['sql_user'], $INFO['sql_pass']);
- mysql_select_db($INFO['sql_database']);
- $result = mysql_query("SELECT * FROM `".$INFO['sql_tbl_prefix']."members` WHERE `name` = '$user'");
- if($result == false){
- prntOutput(false);
- exit;
- }
- $row = mysql_fetch_row($result)or die("False:0:False:0");
- $userID = $row[0];
- $userName = $row[1];
- $userGroup = $row[2];
- $result = mysql_query("SELECT * FROM `".$INFO['sql_tbl_prefix']."members_converge` WHERE `converge_id` = '$userID'");
- if($result == false){
- prntOutput(false);
- exit;
- }
- $row = mysql_fetch_row($result)or die("False:0:False:0");
- $realHash = $row[3];
- $salt = $row[4];
- $md5Pass = md5(md5($salt).md5($pass));
- if($realHash == $md5Pass){
- prntOutput(true, $userGroup, $userName);
- }
- else{
- prntOutput(false);
- }
- }
- ### IPB 3 md5(md5(salt).md5(password)) ###
- function verifyIPB3(){
- global $user, $pass;
- require $path."conf_global.php";
- mysql_connect($INFO['sql_host'], $INFO['sql_user'], $INFO['sql_pass']);
- mysql_select_db($INFO['sql_database']);
- $result = mysql_query("SELECT * FROM `".$INFO['sql_tbl_prefix']."members` WHERE `name` = '$user'");
- if($result == false){
- prntOutput(false);
- exit;
- }
- $row = mysql_fetch_row($result);
- $userName = $row[51];
- $userGroup = $row[2];
- $realHash = $row[61];
- $salt = $row[62];
- $sha1Pass = md5(md5($salt).md5($pass));
- if($sha1Pass == $realHash){
- prntOutput(true, $userGroup, $userName);
- }
- else{
- prntOutput(false);
- }
- }
- function prntOutput($isTrue, $userGroup = 0, $userName = 0){
- global $sha1rid;
- if($isTrue == true){
- echo base64_encode("True:".$userGroup.":".$userName.":".$sha1rid);
- }
- else{
- echo base64_encode("False:0:False:0");
- }
- }
- function doesContain($haystack, $needle){
- if(strpos($haystack, $needle) == false){
- return false;
- }
- else{
- return true;
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement