PHP, MySQL | Бот для Бумас
<?php
session_start(); // Начало сессии
// URL для автоматического входа и защищенной страницы
$loginUrl = 'https://bym.guru/user/login.php'; // URL для входа
$protectedUrl = 'https://bym.guru/'; // URL защищенной страницы
$loginStatus = '';
$protectedPageContent = '';
// Проверка, была ли отправлена форма для входа
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['action']) && $_POST['action'] === 'login') {
$username = isset($_POST['username']) ? $_POST['username'] : '';
$password = isset($_POST['password']) ? $_POST['password'] : '';
// Инициализация cURL
$ch = curl_init();
// Настройка cURL для входа
curl_setopt($ch, CURLOPT_URL, $loginUrl);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array(
'username' => $username,
'password' => $password,
)));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // Следовать за редиректами
curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); // Сохранение cookies
// Выполнение запроса
$response = curl_exec($ch);
// Проверка на ошибки
if (curl_errno($ch)) {
$loginStatus = 'Ошибка cURL: ' . curl_error($ch);
} else {
$loginStatus = 'Вход выполнен успешно';
$_SESSION['logged_in'] = true;
}
// Закрытие cURL
curl_close($ch);
}
// Получение защищенной страницы
if (isset($_SESSION['logged_in']) && $_SESSION['logged_in']) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $protectedUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookie.txt'); // Использование cookies для авторизации
// Выполнение запроса
$protectedPageContent = curl_exec($ch);
// Проверка на ошибки
if (curl_errno($ch)) {
$loginStatus = 'Ошибка cURL: ' . curl_error($ch);
} else if (strpos($protectedPageContent, 'Подключаемый файл не найден!') !== false) {
$loginStatus = 'Ошибка: Подключаемый файл не найден!';
$protectedPageContent = ''; // Очистить содержимое
}
// Закрытие cURL
curl_close($ch);
}
?>
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Автоматический вход и взаимодействие с сайтом</title>
<style>
body {
font-family: Arial, sans-serif;
text-align: center;
margin-top: 50px;
}
form {
display: inline-block;
text-align: left;
max-width: 300px;
margin: 0 auto;
}
input[type="text"], input[type="password"] {
width: 100%;
padding: 8px;
margin: 8px 0;
box-sizing: border-box;
}
button {
padding: 10px 15px;
font-size: 16px;
cursor: pointer;
}
.status {
margin-top: 20px;
font-weight: bold;
}
.protected-content {
margin-top: 20px;
border: 1px solid #ccc;
padding: 10px;
max-width: 800px;
margin-left: auto;
margin-right: auto;
}
</style>
</head>
<body>
<h1>Автоматический вход и взаимодействие с сайтом</h1>
<?php if (!isset($_SESSION['logged_in']) || !$_SESSION['logged_in']): ?>
<form method="POST">
<label for="username">Логин:</label>
<input type="text" id="username" name="username" required>
<br>
<label for="password">Пароль:</label>
<input type="password" id="password" name="password" required>
<br>
<button type="submit" name="action" value="login">Войти</button>
</form>
<?php else: ?>
<div class="status"><?php echo $loginStatus; ?></div>
<div class="protected-content">
<h2>Содержимое защищенной страницы:</h2>
<?php echo $protectedPageContent; ?>
</div>
<a href="auto_login.php?logout=true">Выйти</a>
<?php endif; ?>
<?php
// Логика выхода
if (isset($_GET['logout']) && $_GET['logout'] === 'true') {
session_unset();
session_destroy();
if (file_exists('cookie.txt')) {
unlink('cookie.txt'); // Удаление файла cookies
}
header('Location: auto_login.php');
exit();
}
?>
</body>
</html>
простой ботнет на php
<?php
// Файл для хранения логов
$logFile = 'human_like_bot_logs.txt';
// Функция для записи в лог
function logAction($message) {
global $logFile;
$logEntry = date('Y-m-d H:i:s') . " - $message" . PHP_EOL;
file_put_contents($logFile, $logEntry, FILE_APPEND);
}
// Функция для имитации случайной задержки
function simulateHumanDelay($min, $max) {
$delay = rand($min, $max);
usleep($delay * 1000); // Задержка в миллисекундах
}
// Функция для генерации случайного прогресс-бара
function generateProgressBar($percentage) {
$barLength = 50; // Длина прогресс-бара
$filledLength = intval($barLength * $percentage / 100);
$emptyLength = $barLength - $filledLength;
$progressBar = '[' . str_repeat('#', $filledLength) . str_repeat('-', $emptyLength) . '] ' . $percentage . '%';
return $progressBar;
}
// Обработка формы
$url = isset($_POST['url']) ? trim($_POST['url']) : '';
$count = isset($_POST['count']) ? intval($_POST['count']) : 0;
$progress = 0;
if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($url) && $count > 0) {
// Логирование начала действия
logAction("Бот начал работу для URL: $url с количеством кликов: $count");
// Имитируем переходы по ссылке
for ($i = 1; $i <= $count; $i++) {
// Имитация случайной задержки
simulateHumanDelay(1000, 3000); // Задержка от 1 до 3 секунд
// Имитация выполнения действия и генерация прогресс-бара
$progress = intval(($i / $count) * 100);
$progressBar = generateProgressBar($progress);
$actionMessage = "Клик $i/$count по URL: $url. Прогресс: $progressBar";
// Логирование выполненного действия
logAction($actionMessage);
// Дополнительная задержка перед следующим кликом
simulateHumanDelay(1000, 2000); // Задержка от 1 до 2 секунд
}
// Финальное сообщение
logAction("Бот завершил клики по URL: $url");
}
?>
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Имитатор Бота</title>
<style>
body {
font-family: Arial, sans-serif;
text-align: center;
margin-top: 50px;
}
.progress-bar {
width: 100%;
background-color: #f3f3f3;
border: 1px solid #ddd;
border-radius: 5px;
position: relative;
height: 30px;
}
.progress-bar span {
display: block;
height: 100%;
background-color: #4caf50;
border-radius: 5px;
text-align: center;
color: white;
line-height: 30px; /* Центрирование текста по вертикали */
}
pre {
text-align: left;
max-width: 80%;
margin: 0 auto;
background: #f3f3f3;
border: 1px solid #ddd;
padding: 10px;
border-radius: 5px;
white-space: pre-wrap; /* Сохранение форматирования */
}
</style>
</head>
<body>
<h1>Имитатор Бота</h1>
<form method="POST">
<label for="url">Введите URL:</label>
<input type="text" id="url" name="url" required>
<br><br>
<label for="count">Количество кликов:</label>
<input type="number" id="count" name="count" min="1" required>
<br><br>
<button type="submit">Начать</button>
</form>
<?php if ($progress > 0): ?>
<h2>Прогресс</h2>
<div class="progress-bar">
<span style="width: <?php echo htmlspecialchars($progress); ?>%"><?php echo htmlspecialchars($progress); ?>%</span>
</div>
<?php endif; ?>
<h2>Логи</h2>
<pre><?php echo htmlspecialchars(file_exists($logFile) ? file_get_contents($logFile) : 'Логи отсутствуют.'); ?></pre>
</body>
</html>
Браво, чат нет норм поработал)
Что за идея?
Просто написать бота, который авторизовывается по твоим данным?)
Просто написать бота, который авторизовывается по твоим данным?)
_(Ulty)_ , ты бы додумался такое написать)))
_(Ulty)_ , это всего лишь кусок можно доработать и пользоваться когда бан дали)) можно сменить айпи и юзер агент