PHP code being reported as malware

259 views Asked by At

I have been working on a website on a localhost and have just tried to upload it to a free webserver so I can get some testers, for some reason my code is being reported as malware and is being blocked by my antivirus, this means I can't see anything when visiting it apart from the ERR_CONNECTION_RESET. Have you guys got any ideas as to why this code is being detected as malware?

LOGIN.php

<?php
include('classes/db.php');

if (db::maintenance()) {
  die('This site is currently going under maintenance, please check back again shortly.');
}

if (isset($_POST['submit'])) {
  $username = $_POST['username'];
  $password = $_POST['password'];

  if (db::query('SELECT username FROM users WHERE username=:username', array(':username'=>$username))) {
    if (password_verify($password, db::query('SELECT password FROM users WHERE username=:username', array(':username'=>$username))[0]['password'])) {
      echo "Logged in!";
      $cstrong = True;
      $token = bin2hex(openssl_random_pseudo_bytes(64, $cstrong));
      $user_id = db::query('SELECT id FROM users WHERE username=:username', array(':username'=>$username))[0]['id'];
      db::query('INSERT INTO login_tokens VALUES (NULL, :token, :user_id)', array(':token'=>sha1($token), ':user_id'=>$user_id));
      setcookie("SNID", $token, time() + 60 * 60 * 24 * 7, '/', NULL, NULL, TRUE);
      setcookie('SNID_', '1', time() + 60 + 60 * 24 * 3, '/', NULL, NULL, TRUE);
      header('Location: index.php');
    } else {
      echo "Incorrect password";
    }
  } else {
    echo "User not registered!";
  }
}

?>

 <h1>Login to your account</h1>

<form action="login.php" method="post">
  <input type="text" name="username" value="" placeholder="Username"><p />
  <input type="password" name="password" value="" placeholder="Password"><p />
  <input type="submit" name="submit" placeholder="Login"><p />
</form>

DB.php (I have changed the connection to false data, and changed it to the correct data when uploading it to the host.)

<?php
class db {
  private static function connect () {
    $conn = new PDO('mysql:host=localhost;dbname=users;,charset=utf8', 'root', '');
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    return $conn;
  }

  public static function query ($sql, $params = array()) {
    $statement = self::connect()->prepare($sql);
    $statement->execute($params);

    if (explode(' ', $sql)[0] == 'SELECT') {
     $result = $statement->fetchAll();
     return $result;
    }
  }

  public static function notify ($userid) {
    $notifications = db::query('SELECT forum_members.forum_id, notifications.user_id, notifications.post_id, notifications.forum_id, notifications.post_body, notifications.creation, notifications.type FROM forum_members, notifications WHERE (notifications.forum_id=forum_members.forum_id OR notifications.forum_id=0) AND notifications.user_id=forum_members.user_id ORDER BY notifications.post_id DESC');
    return $notifications;
  }

  public static function maintenance () {
    return false;
  }
}
 ?>
1

There are 1 answers

0
PocketKiller On BEST ANSWER

Which type of address do you use to enter the website? PHP source doesn't display to browsers, so PHP isn't the problem. If you enter in with a hostname (Ex. .....2cc.brad....net) Then it'll automatically get detected as a "malware" for beginner safety, if ur accessing it from localhost/127.0.0.1 it should be fine, but if ur accessing it from a host that's marked as malware, than yep.