Beyond


This is the beyond page that an additional post enumeration and assessment are conducted as the root user after compromising the target system.

Apache


root@blaze:~# cat /etc/apache2/apache2.conf | grep -v '^[#/]'
 
DefaultRuntimeDir ${APACHE_RUN_DIR}
 
PidFile ${APACHE_PID_FILE}
 
Timeout 300
 
KeepAlive On
 
MaxKeepAliveRequests 100
 
KeepAliveTimeout 5
 
 
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
 
HostnameLookups Off
 
ErrorLog ${APACHE_LOG_DIR}/error.log
 
LogLevel warn
 
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
 
Include ports.conf
 
 
<Directory />
	Options FollowSymLinks
	AllowOverride None
	Require all denied
</Directory>
 
<Directory /usr/share>
	AllowOverride None
	Require all granted
</Directory>
 
<Directory /var/www/>
	Options Indexes FollowSymLinks
	AllowOverride None
	Require all granted
</Directory>
 
 
 
 
 
AccessFileName .htaccess
 
<FilesMatch "^\.ht">
	Require all denied
</FilesMatch>
 
 
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
 
 
IncludeOptional conf-enabled/*.conf
 
IncludeOptional sites-enabled/*.conf
 
root@blaze:~# cat /etc/apache2/sites-enabled/000-default.conf | grep -v '^[#/]'
<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        ServerName blaze.offsec
				DocumentRoot /var/www/blaze.offsec
 
        ErrorLog /error.log
        CustomLog /access.log combined
</VirtualHost>

Web


root@blaze:/var/www/blaze.offsec# ll
total 44K
4.0K drwxrwxr-- 5 www-data www-data 4.0K Apr  6  2023 .
4.0K -rwxrwxr-- 1 www-data www-data 2.5K Apr  6  2023 login.php
4.0K -rwxr-xr-x 1 www-data www-data 1.1K Apr  6  2023 password-dashboard.php
4.0K drwxr-xr-x 3 root     root     4.0K Mar 29  2023 ..
4.0K -rwxrwxr-- 1 www-data www-data  233 Mar 29  2023 blocked.html
4.0K drwxrwxr-- 2 www-data www-data 4.0K Mar 29  2023 css
4.0K -rwxrwxr-- 1 www-data www-data  252 Mar 29  2023 db_config.php
4.0K drwxrwxr-- 2 www-data www-data 4.0K Mar 29  2023 img
4.0K -rwxrwxr-- 1 www-data www-data 3.3K Mar 29  2023 index.html
4.0K drwxrwxr-- 2 www-data www-data 4.0K Mar 29  2023 js
4.0K -rwxrwxr-- 1 www-data www-data  234 Mar 29  2023 logout.php

login.php


root@blaze:/var/www/blaze.offsec# cat login.php
<?php
ob_start();
session_start();
include("db_config.php");
ini_set('display_errors', 1);
?>
<html>
<title>Blaze</title>
<head>
  <link rel="stylesheet" href="css/style.css">
</head>
<div class="login">
<div class="form">
	<span class="material-icons">blaze</span>
	<form action="./login.php" class="p-3 mt-3" method="POST">
	<div class="form-field d-flex align-items-center"> <span class="far fa-user"></span> <input type="text" name="username" id="username" placeholder="username"> </div>
        <div class="form-field d-flex align-items-center"> <span class="fas fa-key"></span> <input type="password" name="password" id="password" placeholder="Password"> </div>
	<button>login</button>    
</form>
</div>
</html>
<?php
 
if (!empty($_GET['msg'])) {
    echo "<font style=\"color:#FF0000\">Please login to continue.<br\></font\>";
}
 
if (!empty($_POST['username'])) {
$username = ($_POST['username']);
$password = $_POST['password'];
 
$user_waf = strtolower($_POST['username']);
// sqlmap choker
$shitwords = ["/sleep/i", "/0x/i", "/\*\*/", "/-- [a-z0-9]{4}/i", "/ifnull/i", "/ or /i"];
foreach ($shitwords as $shitword) {
if (preg_match( $shitword, $user_waf )) {
header("Location: ./blocked.html");
die("blocked");
	}
}
$pass_waf = strtolower($_POST['password']);
// sqlmap choker
$shitwords = ["/sleep/i", "/0x/i", "/\*\*/", "/-- [a-z0-9]{4}/i", "/ifnull/i", "/ or /i"];
foreach ($shitwords as $shitword) {
if (preg_match( $shitword, $pass_waf )) {
header("Location: ./blocked.html");
die("blocked");
        }
}
 
$q = "SELECT * FROM users where username like '%".$username."%' AND password like '%".$password."%'" ;
//echo $q;
if (!mysqli_query($con,$q))
	{
		die('Error: ' . mysqli_error($con));
	}
	
	$result = mysqli_query($con,$q);
	$row_cnt = mysqli_num_rows($result);
	if ($row_cnt > 0) {
	
	$row = mysqli_fetch_array($result);
 
	if ($row){
	//$_SESSION["id"] = $row[0];
	$_SESSION["username"] = $row[1];
	$_SESSION["password"] = $row[2];
	//ob_clean();
	
	header('Location:password-dashboard.php');
	}
}
	else{
		echo "<font style=\"color:#FF0000\"><br \>Invalid password!</font\>";
		
	}
while($row = mysqli_fetch_array($result))
                {
                        echo '<div class="d-flex movie align-items-end">
                                <div class="mr-auto p-2">
                                        <h5 class="p-2">'.$row["username"].'</h5>';
                }
}
?>
 
	</div>
	</div>
	  
	  
	  <div class="footer">
		<p>by JDgodd | blaze.offsec</p>
      </div>
	</div> <!-- /container -->
  
</body>
</html>

db_config.php


root@blaze:/var/www/blaze.offsec# cat db_config.php
<?php
// Create connection
$con=mysqli_connect("127.0.0.1","admin","adminpasword","blazeDB");
 
// Check connection
if (mysqli_connect_errno($con))
  {
  echo "<font style=\"color:#FF0000\">Could not connect:". mysqli_connect_error()."</font\>";
  }
?>