Поиск скриптов | Нужна соц сеть.
161817535 (24.10.2020 в 16:25)
Жаль было бы удобней, поро басе64 тоже запомню.
Жаль было бы удобней, поро басе64 тоже запомню.
Base64 можно расшифровать Ассемблером. Который кстати и работает дох сих пор в ПК. Но к нему ещё в добавок добавили C/C++. Код маленько отличается от самого Ассемблера.
Toruz, все языки программирования одно типные и похожи друг на друга, просто воруют.
161817535 (24.10.2020 в 16:31)
Toruz, все языки программирования одно типные и похожи друг на друга, просто воруют.
Toruz, все языки программирования одно типные и похожи друг на друга, просто воруют.
Ассемблер это низко-уровнее програмирования. C/C++ высоко-уровний програмирование.
Toruz, Я понял о чем ты говоришь, ниско уровневые хеш можно расшифровать только на низком уровне, (машинный код) машинный код только двоичный.
Toruz (24.10.2020 в 07:06)
От брута нет защиты. Это перебор паролей(хешей) собственно. Уязвимости которые взломщики используют, XSS-Injection(строка браузера), SQL-Injection(строка браузера), CSRF-Injection(на уровне сервера). Брут это не уязвимость и защита только вверху.
От брута нет защиты. Это перебор паролей(хешей) собственно. Уязвимости которые взломщики используют, XSS-Injection(строка браузера), SQL-Injection(строка браузера), CSRF-Injection(на уровне сервера). Брут это не уязвимость и защита только вверху.
От брута нет защиты?
________
посл. ред. 24.10.2020 в 18:00; всего 1 раз(а); by HEISENBERG
HEISENBERG (24.10.2020 в 18:00)
От брута нет защиты?
От брута нет защиты?
Если взломщик хеш забрал, ты не будешь к нему бегать и говорить "Отдай".
Toruz (24.10.2020 в 11:30)
Файл csrf.class.php это. Его нужно про иклюдить.
Защищаем auth.php от уязвимости CSRF.
php
class CSRF
{
public function get_token_id() {
if(isset($_SESSION['token_id'])) {
return $_SESSION['token_id'];
} else {
$token_id = $this->random(10);
$_SESSION['token_id'] = $token_id;
return $token_id;
}
}
public function get_token() {
if(isset($_SESSION['token_value'])) {
return $_SESSION['token_value'];
} else {
$token = hash('sha256', $this->random(500));
$_SESSION['token_value'] = $token;
return $token;
}
}
public function check_valid($method) {
if($method == 'post' || $method == 'get') {
$post = $_POST;
$get = $_GET;
if(isset(${$method}[$this->get_token_id()]) && (${$method}[$this->get_token_id()] == $this->get_token())) {
return true;
} else {
return false;
}
} else {
return false;
}
}
public function form_names($names, $regenerate) {
$values = array();
foreach ($names as $n) {
if($regenerate == true) {
unset($_SESSION[$n]);
}
$s = isset($_SESSION[$n]) ? $_SESSION[$n] : $this->random(10);
$_SESSION[$n] = $s;
$values[$n] = $s;
}
return $values;
}
private function random($len) {
if (function_exists('openssl_random_pseudo_bytes')) {
$byteLen = intval(($len / 2) + 1);
$return = substr(bin2hex(openssl_random_pseudo_bytes($byteLen)), 0, $len);
} elseif (@is_readable('/dev/urandom')) {
$f=fopen('/dev/urandom', 'r');
$urandom=fread($f, $len);
fclose($f);
$return = '';
}
if (empty($return)) {
for ($i=0;$i<$len;++$i) {
if (!isset($urandom)) {
if ($i%2==0) {
mt_srand(time()%2147 * 1000000 + (double)microtime() * 1000000);
}
$rand=48+mt_rand()%64;
} else {
$rand=48+ord($urandom[$i])%64;
}
if ($rand>57)
$rand+=7;
if ($rand>90)
$rand+=6;
if ($rand==123) $rand=52;
if ($rand==124) $rand=53;
$return.=chr($rand);
}
}
return $return;
}
}Файл csrf.class.php это. Его нужно про иклюдить.
php
<?php
session_start();
include 'csrf.class.php';
$csrf = new csrf();
// Генерация id и значения токена
$token_id = $csrf->get_token_id();
$token_value = $csrf->get_token($token_id);
// Генерация случайных названий для полей формы
$form_names = $csrf->form_names(array('user', 'password'), false);
if(isset($_POST[$form_names['user']], $_POST[$form_names['password']])) {
// Проверяем являются ли валидными id и значение токена.
if($csrf->check_valid('post')) {
// Получаем переменные формы.
$user = $_POST[$form_names['user']];
$password = $_POST[$form_names['password']];
// Метод формы идет тут
}
// Генерируем новое случайное значение для формы.
$form_names = $csrf->form_names(array('user', 'password'), true);
}
?>
<form action="index.php" method="post">
<input type="hidden" name="<?= $token_id; ?>" value="<?= $token_value; ?>" />
<input type="text" name="<?= $form_names['user']; ?>" /><br/>
<input type="text" name="<?= $form_names['password']; ?>" />
<input type="submit" value="Login"/>
</form>Защищаем auth.php от уязвимости CSRF.
Все бы ничего, но, надо защитить не aut.php от csrf а друге формы сайта. Создание блогов, отправка писем в приват, кого то забанить, кому то дать должность... Но это не очень опасно. Опаснее всего смена мыло. Через csrf сменишь мыло админа и получаешь доступ к акку админа. Для Защита от этого автосмены мыло надо поставить токены в форму или же поставить подтверждение с помощью пароля юзера. Если пароль верный сменяется мыло а если нет то нет )
HEISENBERG (24.10.2020 в 18:00)
От брута нет защиты?
От брута нет защиты?
Защита от Брута это ровные руки и хорошие мозги. Помню на вапхп была защита от Брута, не помню 3 попытки было или 5. Еслипароль введен неправильно в опреденый раз то с этого ip уже не аторищоватся часиков 3-5
Uran (24.10.2020 в 18:13)
Все бы ничего, но, надо защитить не aut.php от csrf а друге формы сайта. Создание блогов, отправка писем в приват, кого то забанить, кому то дать должность... Но это не очень опасно. Опаснее всего смена мыло. Через csrf сменишь мыло админа и получаешь доступ к акку админа. Для Защита от этого автосмены мыло надо поставить токены в форму или же поставить подтверждение с помощью пароля юзера. Если пароль верный сменяется мыло а если нет то нет )
Все бы ничего, но, надо защитить не aut.php от csrf а друге формы сайта. Создание блогов, отправка писем в приват, кого то забанить, кому то дать должность... Но это не очень опасно. Опаснее всего смена мыло. Через csrf сменишь мыло админа и получаешь доступ к акку админа. Для Защита от этого автосмены мыло надо поставить токены в форму или же поставить подтверждение с помощью пароля юзера. Если пароль верный сменяется мыло а если нет то нет )
Это пример. Как защищать поля от уязвимости. Если в реале ставить, то естественно всё, что клиент отдаёт к серверу.
________
посл. ред. 24.10.2020 в 18:29; всего 1 раз(а); by Toruz