ArticleSetup Article Script 1.00 – SQL Injection

  • 作者: Linux Zone Research Team
    日期: 2015-12-15
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/38990/
  • ######################################################################################## 
    
    #______________________________________________________________________________________ 
    
    # Exploit Title: Article Script SQL Injection Vulnerability 
    
    # Exploit Author : Linux Zone Research Team 
    
    # Vendor Homepage: http://articlesetup.com/ 
    
    # Google Dork: inurl:/article.php?id= intext:Powered By Article Marketing 
    
    # Software Link: http://www.ArticleSetup.com/downloads/ArticleSetup-Latest.zip 
    
    # Date : 15-December-2015 
    
    # Version: (Version 1.00) 
    
    # CVE: NONE 
    
    # Tested On: Linux - Chrome 
    
    # Category : Web Application 
    
    # MY HOME: http://linux-zone.org/Forums - research@linux-zone.org 
    
    #______________________________________________________________________________________ 
    
    ####################################################################################### 
    
    # 
    
    # localHost/article.php?id=SQL 
    
    #______________________________________________________________________________________ 
    
    ## Vulnerability Code 
    
    <?php 
    
    include('config.php'); 
    
    
    
    //Create site settings variables 
    
    $sitequery = 'select * from settings;'; 
    
    $siteresult = mysql_query($sitequery,$connection) or die(mysql_error()); 
    
    $siteinfo = mysql_fetch_array($siteresult); 
    
    $siteurl = $siteinfo['url']; 
    
    
    
    $article = $_GET['id']; 
    
    
    
    if (!is_numeric($article)) { 
    
    header('Location: '.$siteurl); 
    
    } 
    
    
    
    else 
    
    
    
    { 
    
    
    
    $sitequery = 'select * from settings;'; 
    
    $siteresult = mysql_query($sitequery,$connection) or die(mysql_error()); 
    
    
    
    //Create site settings variables 
    
    $siteinfo = mysql_fetch_array($siteresult); 
    
    $sitetitle = $siteinfo['title']; 
    
    $siteurl = $siteinfo['url']; 
    
    $sitecomments = $siteinfo['comments']; 
    
    $commentmod = $siteinfo['commentmod']; 
    
    
    
    $query = "select * from articles where status=0 and id = ".$article; 
    
    
    
    $articleresults = mysql_query($query,$connection) or die(mysql_error()); 
    
    $num_results = mysql_num_rows($articleresults); 
    
    $articleinfo = mysql_fetch_array($articleresults); 
    
    
    
    if (!$num_results) { 
    
    header('Location: '.$siteurl); 
    
    } 
    
    
    
    //Get article info 
    
    $id = $articleinfo['id']; 
    
    $authorid = $articleinfo['authorid']; 
    
    $date = strtotime($articleinfo['date']); 
    
    $artdate = date('m/d/y', $date); 
    
    $categoryid = $articleinfo['categoryid']; 
    
    $title = stripslashes($articleinfo['title']); 
    
    $body = stripslashes($articleinfo['body']); 
    
    $resource = $articleinfo['resource']; 
    
    
    
    
    
    //Meta Info 
    
    $cathead = 0; 
    
    $metatitle = $title." - "; 
    
    include('header.php'); 
    
    include('sidebar.php'); 
    
    
    
    
    
    if ($seourls == 1) { $scrubtitle = generate_seo_link($title); } 
    
    
    
    
    
    // Setup the article template 
    
    $articletemp = new Template("templates/".$template."/article.tpl"); 
    
    
    
    // get author info 
    
    $authorquery = "select * from authors where id=".$authorid; 
    
    $authorresult = mysql_query($authorquery,$connection) or die(mysql_error()); 
    
    $authorinfo = mysql_fetch_array($authorresult); 
    
    $authorname = $authorinfo['displayname']; 
    
    $authorbio = $authorinfo['bio']; 
    
    $gravatar = $authorinfo['gravatar']; 
    
    if ($seourls == 1) { $scrubauthor = generate_seo_link($authorname); } 
    
    
    
    // get category info 
    
    $catquery = "select * from categories where id=".$categoryid; 
    
    $catresult = mysql_query($catquery,$connection) or die(mysql_error()); 
    
    $catinfo = mysql_fetch_array($catresult); 
    
    $categoryname = $catinfo['name']; 
    
    $catparent = $catinfo['parentid']; 
    
    if ($seourls == 1) { $scrubcatname = generate_seo_link($categoryname); } 
    
    
    
    // if the category doesn't have a parent 
    
    if ($catparent == NULL) { 
    
    if ($seourls == 1) { // With SEO URLS 
    
    $displaycat = "<a href=\"".$siteurl."/category/".$categoryid."/" 
    
    .$scrubcatname."/\"><b>".$categoryname."</b></a>"; 
    
    } else { 
    
    $displaycat = "<a href=\"".$siteurl."/category.php?id=".$categoryid 
    
    ."\"><b>".$categoryname."</b></a>"; 
    
    } 
    
    
    
    // if the category DOES have a parent 
    
    } else { 
    
    $query = "select * from categories where id=".$catparent; 
    
    $result = mysql_query($query,$connection) or die(mysql_error()); 
    
    $info = mysql_fetch_array($result); 
    
    $parentname = $info['name']; 
    
    if ($seourls == 1) { $scrubparent = generate_seo_link($parentname); } 
    
    
    
    if ($seourls == 1) { // With SEO URLS 
    
    $displaycat = "<a href=\"".$siteurl."/category/".$catparent."/" 
    
    .$scrubparent."/\"><b>".$parentname."</b></a> > 
    
    <a href=\"".$siteurl."/category/".$categoryid."/" 
    
    .$scrubcatname."/\"><b>".$categoryname."</b></a>"; 
    
    } else { 
    
    $displaycat = "<a href=\"".$siteurl."/category.php?id=".$catparent 
    
    ."\"><b>".$parentname."</b></a> > 
    
    <a href=\"".$siteurl."/category.php?id=".$categoryid 
    
    ."\"><b>".$categoryname."</b></a>"; 
    
    } 
    
    } 
    
    
    
    
    
    // Add a view to this article 
    
    $query = "select * from articleviews where articleid = ".$article; 
    
    $results = mysql_query($query,$connection) or die(mysql_error()); 
    
    $viewinfo = mysql_fetch_array($results); 
    
    if ($viewinfo == NULL) { 
    
    $sql = "INSERT INTO articleviews VALUES (".$article.", 1)"; 
    
    $query = mysql_query($sql); 
    
    } else { 
    
    $totalviews = $viewinfo['views']; 
    
    $totalviews++; 
    
    
    
    $sql = "UPDATE articleviews SET views=".$totalviews." WHERE `articleid`=".$article.""; 
    
    $query = mysql_query($sql); 
    
    } 
    
    
    
    if ($seourls == 1) { // With SEO URLS 
    
    $authorlink = "<a href=\"".$siteurl."/profile/".$authorid."/".$scrubauthor."/\"><b>".$authorname."</b></a>"; 
    
    } else { 
    
    $authorlink = "<a href=\"".$siteurl."/profile.php?a=".$authorid."\"><b>".$authorname."</b></a>"; 
    
    } 
    
    
    
    // Setup all template variables for display 
    
    $articletemp->set("authorname", $authorname); 
    
    $articletemp->set("authorlink", $authorlink); 
    
    $articletemp->set("date", $artdate); 
    
    $articletemp->set("displaycat", $displaycat); 
    
    $articletemp->set("views", $totalviews); 
    
    $articletemp->set("title", $title); 
    
    $articletemp->set("body", $body); 
    
    $articletemp->set("gravatar", $gravatar); 
    
    $articletemp->set("resource", $resource); 
    
    
    
    // For the adcode 
    
    $query = "select * from adboxes where id=1;"; 
    
    $result = mysql_query($query,$connection) or die(mysql_error()); 
    
    $info = mysql_fetch_assoc($result); 
    
    $articletemp->set("250adcode", stripslashes($info['adcode'])); 
    
    
    
    
    
    // Outputs the homepage template! 
    
    
    
    echo $articletemp->output(); 
    
    
    
    //Displays the comments -- if admin has them enabled 
    
    
    
    if($sitecomments == 0) { 
    
    echo "<br/><h2>Comments</h2>"; 
    
    
    
    require_once 'comments/classes/Comments.class.php'; 
    
    
    
    /* Article ID which shows the comments */ 
    
    $post_id = $article; 
    
    
    
    /* Level of hierarchy comments. Infinit if declared NULL */ 
    
    $level = NULL; 
    
    
    
    /* Number of Supercomments (level 0) to display per page */ 
    
    $supercomments_per_page = 10000; 
    
    
    
    /* Moderate comments? */ 
    
    if ($commentmod == 0) { 
    
    $moderation = true; 
    
    } else { 
    
    $moderation = false; 
    
    } 
    
    
    
    # Setup db config array # 
    
    $db_config = array("db_name" => $db_name, 
    
    "db_user" => $dbusername, 
    
    "db_pass" => $dbpassword, 
    
    "db_host" => $server ); 
    
    
    
    # Create Object of class comments 
    
    $comments = new Comments($post_id, $level, $supercomments_per_page, $moderation, $db_config); 
    
    
    
    # Display comments # 
    
    echo $comments->getComments(); 
    
    } 
    
    
    
    include('rightsidebar.php'); 
    
    include('obinclude.php'); 
    
    
    
    } 
    
    
    
    ?> 
    
    
    
    ####################################### 
    
    # 
    
    # Hassan Shakeri - Mohammad Habili 
    
    # 
    
    # Twitter : @ShakeriHassan - Fb.com/General.BlackHat 
    
    ##########################################################