Re: FermaSosedi.Ru - Ферма Соседи
А вы сами смотрите на скрины и пробуйте подбирать пути.
к примеру
https://fermasosedi.ru/principal/index.php оу, уж точно не 404.
Админ, выкручивайся как хочешь, но факт остаётся фактом.
Ещё палка:
https://fermasosedi.ru/principal/errors/db.php
Конечно через 5-10 минут это работать не будет и админ всё залатает
добавлено через 3 минуты
https://fermasosedi.ru/modules/brauser.php
https://fermasosedi.ru/modules/newlevel.php
https://fermasosedi.ru/modules/cache.php
https://fermasosedi.ru/onlinesql.php
https://fermasosedi.ru/func.php
https://fermasosedi.ru/template.php
Это лишь так, к примеру - что мне известны все пути на твоем сервере, где и какой файл лежит.
Только не говори - что простой пользователь может их как то увидеть, это уже полным лошарой надо быть.
добавлено через 6 минут
https://fermasosedi.ru/pay/free-success.php
вот ещё тебе пример)))
https://fermasosedi.ru/pay/payersuccesspay.php
https://fermasosedi.ru/pay/pay.php
https://fermasosedi.ru/pay/payyandex.php
Или сейчас найдется какой то олух, который будет мне доказывать что есть специальные программы позволяющие это узнать
добавлено через 9 минут
Вот вам пример кода обработки файла /login/code.php
Код:
<?php
session_start();
// Juego de letras para usar
$letras = '0123456789';
// Configuracion tamano imagen y tamano fuente
$ancho_caja = 70;
$alto_caja = 20;
$tam_letra = 10;
$tam_letra_grande = 15;
// angulo maximo que rota (izq y der) cada letra
$angmax = 20;
// Establecer el tipo de contenido
header("Content-type: image/png");
// Creamos una imagen
$im = imagecreate($ancho_caja, $alto_caja);
// Creo el color del texto, del texto del fondo y del fondo de la imagen
$gris = ImageColorAllocate($im, 255, 255, 255);
$colorLetra = ImageColorAllocate($im, 50, 50, 100);
$colorLetraFondo = ImageColorAllocate($im, 255, 156, 156);
// tipo de letra obtenido en dafont.net
$fuente = './image.ttf';
// Calculo el numero de lineas que entran
$caja_texto = imagettfbbox($tam_letra, 0, $fuente , $letras);
$alto_linea = abs($caja_texto[7]-$caja_texto[1]);
$num_lineas = intval($alto_caja / $alto_linea)+1;
// Dibujo las letras del fondo
// Cada letra de escribe de una en una para poder
// darle una rotacion independiente al resto
$pos = 0;
for ($i = 0; $i<$num_lineas; $i++) {
$x = 0;
for ($j = 0; $j<30; $j++) {
$texto_linea = $letras[rand(0, strlen($letras)-1)].' ';
$caja_texto = imagettfbbox($tam_letra, 0, $fuente , $texto_linea);
imagettftext($im, $tam_letra, rand(-$angmax, $angmax), $x, $alto_linea*$i, $colorLetraFondo, $fuente , $texto_linea);
// Posicion x de la siguiente letra
$x += $caja_texto[2] - $caja_texto[0];
}
}
// Escribo las tres letras del CAPTCHA
$res = $letras[rand(0, strlen($letras)-1)];
$ang1 = rand(-$angmax, $angmax);
$caja_texto = imagettfbbox($tam_letra_grande, $ang1, $fuente , $res);
$y1 = abs($caja_texto[7]-$caja_texto[1]);
$x1 = abs($caja_texto[2]-$caja_texto[0]);
$res .= $letras[rand(0, strlen($letras)-1)];
$ang2 = rand(-$angmax, $angmax);
$caja_texto = imagettfbbox($tam_letra_grande, $ang2, $fuente , $res[1]);
$y2 = abs($caja_texto[7]-$caja_texto[1]);
$x2 = abs($caja_texto[2]-$caja_texto[0]);
$res .= $letras[rand(0, strlen($letras)-1)];
$ang3 = rand(-$angmax, $angmax);
$caja_texto = imagettfbbox($tam_letra_grande, $ang3, $fuente , $res[2]);
$y3 = abs($caja_texto[7]-$caja_texto[1]);
$x3 = abs($caja_texto[2]-$caja_texto[0]);
$res .= $letras[rand(0, strlen($letras)-1)];
$ang4 = rand(-$angmax, $angmax);
$caja_texto = imagettfbbox($tam_letra_grande, $ang4, $fuente , $res[3]);
$y4 = abs($caja_texto[7]-$caja_texto[1]);
$x4 = abs($caja_texto[2]-$caja_texto[0]);
imagettftext($im, $tam_letra_grande, $ang1, ($ancho_caja/2)-(($x1+$x2+$x3+$x4)/2), $y1+($alto_caja-$y1)/2, $colorLetra, $fuente , $res[0]);
imagettftext($im, $tam_letra_grande, $ang2, ($ancho_caja/2)-(($x1+$x2+$x3+$x4)/2)+($x1), $y2+($alto_caja-$y2)/2, $colorLetra, $fuente , $res[1]);
imagettftext($im, $tam_letra_grande, $ang3, ($ancho_caja/2)-(($x1+$x2+$x3+$x4)/2)+($x1+$x2), $y3+($alto_caja-$y3)/2, $colorLetra, $fuente , $res[2]);
imagettftext($im, $tam_letra_grande, $ang4, ($ancho_caja/2)-(($x1+$x2+$x3+$x4)/2)+($x1+$x2+$x3), $y4+($alto_caja-$y4)/2, $colorLetra, $fuente , $res[3]);
imagepng($im);
imagedestroy($im);
$_SESSION["login_code"] = $res;
?>
добавлено через 11 минут
Ну ладно... уговорили...сам login.php:
Код:
<?php
$page = 'login';
$file = 'login.php';
require_once '../config.php';
$sql = mysql_quer_y("SELECT ip FROM banip WHERE ip='".$ip."' LIMIT 1");
if(mysql_num_rows($sql)){
header("HTTP/1.0 403 Здравствуйте господа брутеры! Вам тут не рады ;)");
die("Здравствуйте господа брутеры! Вам тут не рады ;)");
exit();
}
require('../class/pbkdf2.php');
if(isset($_SESSION['username'])){
print "<meta http-equiv=\"refresh\" content=\"0;URL=/accaunt/\">";
exit();
}
if(isset($_POST["user"]) && isset($_POST["pass"]) and ($_POST["user"]!="") and ($_POST["pass"]!="") and ($_POST["code"]!="") and ($_POST["code"]!="")) {
$user = substr(htmlstring($_POST["user"]),0,30);
$password = substr(htmlstring($_POST['pass']),0,30);
$code = intval(substr($_POST["code"],0,4));
if (!isset($_SESSION['login_code'])) {
$error = "<b style=\"color:#ff0000\">Неверно введен проверочный код...</b>";
include "../template.php";
exit();
}
if ($code!= $_SESSION['login_code']) {
$error = "<b style=\"color:#ff0000\">Неверно введен проверочный код...</b>";
unset($_SESSION['code']);
include "../template.php";
exit();
}
if(!preg_match('/^[0-9A-Za-z_\-#@%.,]+$/',$password)){
$error = "<b style=\"color:#ff0000\">Пароль должен быть из латинских букв и цифр и символов -_.,#@%</b>";
include "../template.php";
exit();
}
//--------повторная авторизация через некоторое время---------
$sql = mysql_quer_y("SELECT * FROM ref_userserrorlog WHERE user='".$user."' ORDER BY id DESC LIMIT 1");
if (mysql_num_rows($sql)) {
$row = mysql_fetch_assoc($sql);
$vremea = $row["vremea"];
if ($vremea > time()) {
$error = "<b style=\"color:#ff0000\">Ошибка! Подождите ".($vremea-time())." секунд и попробуйте ещё раз!</b>";
include "../template.php";
exit();
}
}
//--------повторная авторизация через некоторое время---------
$sql = mysql_quer_y("SELECT * FROM ref_userserrorlog WHERE ip='".$ip."' ORDER BY id DESC LIMIT 1");
if (mysql_num_rows($sql)) {
$row = mysql_fetch_assoc($sql);
$vremea = $row["vremea"];
if ($vremea > time()) {
$error = "<b style=\"color:#ff0000\">Ошибка! Подождите ".($vremea-time())." секунд и попробуйте ещё раз!</b>";
include "../template.php";
exit();
}
}
//----------бан тех у кого больше 5 попыток ---------
$sql = mysql_quer_y("SELECT * FROM ref_userserrorlog WHERE ip='".$ip."'");
if (mysql_num_rows($sql) >= 5) {
$vremea = time()+60*60*24;
$sql1 = "INSERT INTO banip (ip,vremea) VALUES ('".$ip."','".$vremea."')";
mysql_quer_y("BEGIN");
if (mysql_quer_y($sql1)) {
mysql_quer_y("COMMIT");
$error = "<b style=\"color:#ff0000\">Попытка брута паролей! Ip заблокирован на 24 часа!</b>";
include "../template.php";
exit();
}else{
mysql_quer_y("ROLLBACK");
exit();
}
}
//----------бан тех у кого больше 5 попыток ---------
$sql = mysql_quer_y("SELECT * FROM ref_userserrorlog WHERE user='".$user."'");
if (mysql_num_rows($sql) >= 5) {
$error = "<b style=\"color:#ff0000\">К этому аккаунту хотели подобрать пароль, попробуйте зайти в игру через пол часа!</b>";
include "../template.php";
exit();
}
$sql = mysql_quer_y("SELECT pass_hash FROM ref_users WHERE username = '".$user."' LIMIT 1");
if(!mysql_num_rows($sql)) {
$error = "<b style=\"color:#ff0000\">Пользователь ".$user." не найден!</b>";
include "../template.php";
exit();
}else{
$pass_hash = mysql_result($sql,0);
$validate = validate_password($password, $pass_hash);
if ($validate != "1") {
include_once('../ip2c/ip2country.php');
$ip2c=new ip2country();
$ip2c->mysql_host='localhost';
$ip2c->db_user="fedoska_fermau";
$ip2c->db_pass="FtMPh2we58fDn948jN2sXvEY5Cbdm8PX";
$ip2c->db_name="ip2country";
$ip2c->table_name='ip2c';
$strana = $ip2c->get_country_code();
$agent = mysql_real_escape_string($_SERVER['HTTP_USER_AGENT']);
require ('../config.php');
$vremea = time()+30;
$sql1 = "INSERT INTO ref_userserrorlog (ip,user,vremea) VALUES ('".$ip."','".$user."','".$vremea."')";
$sql = mysql_quer_y("SELECT id FROM ref_users WHERE username = '".$user."' LIMIT 1");
$id = mysql_result($sql,0);
$sql_log = "INSERT INTO ref_userslog (userid,vremea,ip,agent,strana,neudacino) VALUES ('".$id."','".date("Y-m-d H:i:s")."','".$ip."','".$agent."','".$strana."','1')";
$brute = mysql_num_rows(mysql_quer_y("SELECT id FROM ref_userserrorlog WHERE ip='".$ip."'"));
mysql_quer_y("BEGIN");
if( mysql_quer_y($sql1) and mysql_quer_y($sql_log)) {
mysql_quer_y("COMMIT");
$pop = 5 - $brute;
$error = '<b style="color:#ff0000">Неправильный логин или пароль! После '.$pop.' попыток ip будет заблокирован на 24 часа. Если забыли пароль, воспользуйтесь <a href="/remind/" title="Забыли пароль?">ссылкой</a> для того чтоб выслать новый на ваш емайл. </b>';
include "../template.php";
exit();
}else{
mysql_quer_y("ROLLBACK");
exit();
}
}else{
$sql = mysql_quer_y("SELECT id, username, iplog, user_status, pricina, regok, lastday FROM ref_users WHERE username = '".$user."' LIMIT 1");
$row = mysql_fetch_assoc($sql);
$userid = $row['id'];
$userbase = $row['username'];
$status = $row['user_status'];
$lastip = $row['iplog'];
$regok = $row['regok'];
$lastday = $row['lastday'];
if($status == '3') {
$pricina = $row['pricina'];
print "<html>
<head>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\">
<link href=\"/style.css\" rel=\"stylesheet\">
<script language=\"javascript\">alert('Вы заблокированы! По причине: ".$pricina."'); top.location.href=\"/\";</script>
<meta http-equiv=\"refresh\" content=\"0;URL=/\">
<title>Перенаправление</title>
</head>
<body topmargin=\"0\" leftmargin=\"0\">
Через секунду вы будете перемещены на сайт.<br>
Если устали ждать жмите <a href=\"/\">здесь!</a>
</body>
</html>";
}else{
include_once('../ip2c/ip2country.php');
$ip2c=new ip2country();
$ip2c->mysql_host='localhost';
$ip2c->db_user="fedoska_fermau";
$ip2c->db_pass="FtMPh2we58fDn948jN2sXvEY5Cbdm8PX";
$ip2c->db_name="ip2country";
$ip2c->table_name='ip2c';
$strana = $ip2c->get_country_code();
$agent = mysql_real_escape_string($_SERVER['HTTP_USER_AGENT']);
$time = time();
require ('../config.php');
$sql_query = "UPDATE ref_users SET lastiplog = '".$lastip."', iplog = '".$ip."', lastday = '".$time."', agent = '".$agent."', strana = '".$strana."' WHERE id = '".$userid."' LIMIT 1";
$sql_log = "INSERT INTO ref_userslog (userid,vremea,ip,agent,strana) VALUES ('".$userid."','".date("Y-m-d H:i:s")."','".$ip."','".$agent."','".$strana."')";
mysql_quer_y("BEGIN");
if (mysql_quer_y($sql_query) and mysql_quer_y($sql_log)) {
mysql_quer_y("COMMIT");
$_SESSION['username'] = $userbase;
$_SESSION['userid'] = $userid;
$pager="/news/";
$ok = "Вы вошли в систему как <b>".$user."</b><br>
Через секунду вы будете перемещены на сайт.<br>
Если устали ждать жмите <a href=\"".$pager."\">здесь!</a>";
include "../template.php";
print "<meta http-equiv=\"refresh\" content=\"0;URL=".$pager."\">";
}else{
echo mysql_error();
mysql_quer_y("ROLLBACK");
$error = "Ошибка базы! Попробуйте зайти еще раз!<br />";
include "../template.php";
exit();
}
}
}
}
}else{
$error = '<b style="color:#ff0000">Введите логин и пароль!</b>';
include "../template.php";
exit();
}
?>
добавлено через 12 минут
ДРУЗЬЯ! Ваши деньги в безопасности