• XSS.stack #1 – первый литературный журнал от юзеров форума

Опыт грязного ремесла.

Одинокий Волк

CPU register
Забанен
Регистрация
16.05.2005
Сообщения
1 264
Решения
1
Реакции
3
Пожалуйста, обратите внимание, что пользователь заблокирован
Опыт грязного ремесла.

Почему я назвал именно так? Потому что я никогда не считал тем что делаю правильным или нужным во благо людям, я прекрасно осознаю что это делается для корыстных целей для обмана/кражи и т.п. и всё это ради денег, которые в итоге всех их губят, поэтому всё справедливо каждый получает своё...

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

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

Часть 1. Связки.
Давным давно ещё когда мне приходилось делать связки я конечно же был далеко не первым и не делал сплойты. Всё было точно так же как и сейчас брали паблик сплойт, потом уже покупали через 10ые лицы приватные от реверсеров и вязали связки.
Смотря сейчас и сравнивая с тем что бы пару лет назад хочу сказать ничего не поменялось всё на том же уровне, очень странно но это так, хотя не без исключений.
Я поделюсь своим опытом из своих экспериментов при связкописании.

1. Первое что хочу отметить связка это не всего лишь админка которая показывает красивые статы, в первую очередь это интеллектуальная система которая анализирует трафик для того что бы подобрать подходящий сплойт на выдачу. Поэтому меня до сих пор удивляют связки по 600-1к+ в которых весь вывод идёт сплошным js кодом сплойтов один за другим, кто-то ставит таймеры, кто-то ставит переменные и ловит их выполнение...
Так вот я всегда руководствовался тем что прежде чем что-то делать нужно это придумать, даже если оно уже придумано. Ведь все мы люди и все мы разные, а значит и мыслим по разному. Мои изучения были наложены на сбор статистики, что бы понять как правильно нужно выдавать сплойты нужно было понять для чего их приходится выдавать. Были созданы мной совместно с моим партнёром 47 скрипты.
Статистику собирали следующую:
- ОС их версии
- Браузеры и их версии
- Плагины в браузерах и их версии (до сих пор нигде не встречал этого ну кроме последних где pdf и flash определяется, а ведь странно потому что сплойты 90% это баги в плагинах)
Сейчас думаю это не будет секретом очень много генеренного трафика, добавив проверку на работу js и простую проверку с куками и редиректом можно его отсеить и увидеть кстати внушительные цифры если собрать в отдельную стату он будет не меньше 10% что уменьшают пробив пустой выдачей сплойтов, а это уже недоработка связки.

Так вот анализ трафика с разных источников по этим данным показал довольно ясную картину на сколько этот трафик вообще пробиваемый. Но что самое главное в чём была суть определить % наличия уязвимых плагинов под которые есть сплойты.
Даже после такого анализа можно только примерно составить процент пробива на данном трафике.
И так идём дальше ближе к кодерской сути.
Для правильной выдачи сплойтов мы использовли определение js и проверку кук, ОС, Браузера, учитывая версии, определять наличие уязвимого плагина в браузере и только после этого собирать выдачу из подходящих вариантов или делать бэк редирект.

Что касается о самой выдачи сплойтов о чём я писал выше, вариант со сплошной выдачей, таймерами и переменными в моих экспериментах показали себя хуже чем мой вариант с ифреймами.
Небольшая ремарка: 47 в новых тестах сказал что моя версия работает похуже и сделал новую свою выдачу, поэтому решать на сколько это хорошо вам.
Что же это за ифреймы, постараюсь объяснить с начало теорию почему я к ним пришёл.
И так моя логика пошла от работы самого сплойта, т.е. это выполнения шеллкода в выделенном участке памяти другого процесса. И тут я подумал а что же бывает когда мы выполняем по 3-4 сплойта в одном и том же процессе но используем разные уязвимости только получается эффективность должна снижаться и вообще могут быть непредсказуемые последствия типа overflow т.к. сплойты не предназначены для параллельной работы.
А что из себя представляют ифреймы - это как я думаю всё же дочерние процессы или отдельные как в некоторых браузерах табы, которые независимые друг от друга их объединяет только процесс-родитель, а значит мы получаем место полигона для каждого сплойта. Таким образом после проведения анализа я сделал выдачу в ифреймах каждый сплойт подгружался в отдельном. Работать они стали значительно быстрее и эффективность пробива увеличилась.

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

Думаю на этом можно подвести итог.


Часть 2. Админки для троянов.
Многие кто пишут админки зачастую начинающие кодеры или вообще не вебкодеры а прикладные пытающиеся написать самому админку что бы никому не надо было платить или с кем-то делиться.
Из своих наблюдей и опыта могу лишь поделиться некоторыми особенностями в этом деле, т.к. что бы написать админку для серьёзного ботнета мало знать просто php и mysql их нужно отлично знать, а главное нужно понимать весь принцип работы что бы делать заплатки на все узкие места которых в таких проектах очень много.
Про сами админки думаю рассказывать нечего делайте юзабильно удобно и функционально, это дело каждого как она будет выглядеть и какой функционал вести.
Я хочу уделить внимание части где идёт работа с самим ботом, а так же немного об проектировании архитектуры БД.

Прежде чем начать что-то писать лично я беру листок бумаги и карандаш и начинаю рисовать, т.к. стереть резинкой и перерисовать гораздо быстрее чем при тестировании переписать код :)
Но рисовать конечно надо не окошки где что будет, а рисовать структуру базы данных.
Нужно определиться с функционалом бота что бы правильно и оптимизировано сделать общения с ним, ведь их будет тысячи.
Я отмечу несколько пунктов которые помогают при больших нагрузках:
1. Таблицы не должны иметь много полей (как делают например в зевсе по 15-20 :)
2. Если предполагается большое кол-во строковых параметров типов varchar и text то лучше вынести их в отдельные таблицы и сделать связующим id.
Теперь объясню почему нужны эти 2 пункта. MySQL имеет свои лимиты а именно позволяет в одной таблицы хранить до 4Гб данных, на сколько помню это связано с файловой системой ОС. Так вот если вы рассчитываете что ваш ботнет будет иметь 100к ботов тогда сразу нужно посчитать какие данные вы о ботах будете хранить и учесть эти данные в байтах после чего умножить на 100к и выяснить поместиться ли это, забегу на перёд учитывайте так же поиск по этим данных например если бот уже есть в БД или выборку по стране или типу к примеру, ведь SELECT это не INSERT он резервирует память при поиске в таблице и чем больше там данных тем больше потребует памяти что бы в них поискать.
3. Если данные в таблицах о боте будут обновлятся при каждом его отстуке, то эти данные должны быть связаны 1 параметром бота либо его id который будет auto_increment в главной таблице, либо его id который будет передавать сам бот, это нужно что бы можно было сделать выборку этих данных в 1 запрос с помощью LEFT JOIN а не пришлось делать по не скольку запросов.
4. Таблицы для логов нужно создавать в зависимости от их назначения и дальнейшего использования. Т.е. например если это соксы то можно хранить всё в 1 таблице так будет удобнее с ними работать а главное менее затратно по ресурсам. Если это логи трояна, то лучше делать разбивку на даты используя вложенные таблицы формата 2009_12__20, 2009_12__21, а так же придерживаясь правилам 1 и 2 для этих таблиц.

Думаю эти основные момент с которыми я сталкивался при проектирование.
Дальше перейдём к гейту - скрипту работающим с ботом.
В нём я хочу отметить следующие правила:
1. Использовать нужно минимальное кол-во обращений к БД, не стоит делать лишних.
2. Не нужно делать поисков и выборок по большим таблицам или спискам таблиц, не в коем случаи нельзя использовать LIKE %%.
3. INSERT лучше использовать с DELAY
По этим 3-м пунктом причина одна, нужно максимально сократить время на выполнения всех запросов и отдачи ответа боту, т.к. он держит соединение с сервером забивает канал, а так же при долгих запросах если они будут частые будут сбои в работе БД. Самый оптимальный вариант это в 3 запроса(он может быть больше и не портить картины):
1) Определили новый бот или нет
2) Получили список команд
3) Обновили данные о боте или добавили нового
Всё. Остальное уже нужно оптимизировать в минимальное кол-во запросов и с минимальными затратами на память и время.
4. При выдачи команд лучше их шифровать, я всегда использую между обменом данных с ботом рандомный ключ внутри самих команд определяющий по кол-ву символов или чему-то другому.
5. Если нужно передавать боту файлы на сервер лучшей вариант будет передача через PUT а приём через php://input так надёжнее и быстрее.
6. Так же лучше всего использовать mod_rewrite и id заданий или файлов для их отдачи по отдельным url, если в этом есть необходимость.
7. Для защиты лучше использовать header параметр который вшит в бота, в нём передавать ключевую фразу которую проверять в запросах, так же можно использовать алгоритм который будет динамически генерировать эту фразу от каких-то особых постоянно меняющихся параметров что бы для каждого запроса она была уникальный, например: от времени и урл md5 хеш. Так же можно генерировать от времени и ид бота временные урл по которым бот может взять только 1 раз задание или файл.

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

20.12.2009 (с) Одинокий Волк aka Lonely Wolf

UPD. Добавлена перелинковка со статьёй на других форумах, т.к. везде разные комментарии и некоторые интересные вопросы и ответы на них.
https://forum.web-hack.ru/index.php?showtopic=91869
http://exploit.in/forum/index.php?showtopic=31258
 
почитал..... мнтеерсно.. а по выдаче сплоитов такая мысля у меня была уже с 2006
что то подобное писали с гемаглабином
 
Огромное спасибо за статью... узнал действительно много полезного(ибо на данный момент изобретал велосипед).Больше всего понравились 7 пунктов работы с гейтом.
Приятно было читать статью, особенно учитывая то, что человек не один год занимается этим.
 
Банальности, даже мне человеку далекому от "грязного ремесла", но учитывая что этим ремеслом занимается куча "школьнков", то это им поможет. В обще, все это не для "грязного ремесла" можно почитать в тематических блогах, сайтах по проектированию высоконагруженных порталов и приложений. Само собой большая часть авторов пишут на английском, так как у наши криворуких программеров в большинстве своем все равно отстает в осваивание новых технологий.

Вот что считаю важно, подчеркнуть, так это "ПРОЕКТИРОВАНИЕ ПРОЕКТИРОВАНИЕ и еще раз ПРОЕКТИРОВАНИЕ" а уж потом писать, построение схемы и архитектуры, а потом писать. И доводилось видеть как зевс на выделеной железке ложился при 2К ботах онлайн не есть гуд.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
А я и не говорил что буду раскрывать какие-то секреты, я лишь делюсь повседневным опытом который есть далеко не у многих даже тех кто считает себя профи. рассказать в одной или в 10 статьях всё детали просто нереально потому что я сам их не вспомню вот так сидя и составляя пункты, тут надо столкнуться с задачей лицом к лицо что бы сразу определить какие в ней будут узкие места, все плюсы и минусы, но постараюсь в других статьях не брать такой большой объем все связки или все трояны а брать поконкретнее и уже от туда углубляться в детали :)
 
Да не я не критиковал. Я о другом писал - о низкой базе самих "писателей черного ремесла"

Если уж говорить предметно, то выглядить должно это так

1. Постановка задачи (хочу весь мир и чуточку больше)
2. Определение функциональных требований (шифрования, обновления и т.п.)
3. Обзор существующих технологий и решений (в данном варианте просмотр исходников из паблика)
4. Выбор технологии и решение
5. Проектирование архитектуры (если не хотим постояно переделывать)
6. Создание черновго варианта
7. Первая проба
8. Это сладкое слово релиз.


Причем все пункту могут идти для написания и деланье чего угодно, буть то программирование или админство. Внедрение нового говна или вынос какого то функционала.

По поводу статьей или не упомню, тут все просто и сложно одновременно. Все мы люди, все мы спонтанны и импульсивны. Но если представить, что мы не хотим повторять как обезьянки индусы и т.п. по сто раз одно и тоже, допуская порой одни и теже ошибки, то повяляеться волшебное слово cheklist. В обще он не нужен, если все делается по "науке" или хотябы по плану выше. Но я отлично понимаю, что у многих "руки чешуться" и они сначала "ваяют", а потом думают, в этом случае помгает самодисциплина, ввиде придумал, что то сверхгениальное сделай пометку. которую, а тут ВНИМАНИЕ сможешь понять даже через месяц, с описанием действия (функционала) а в конце такого "проекта" просто систематизируешь записи и получаешь о чудо cheklist. И начав ваять новый продукт или версию номер два, через некоторое время заглядывая в чеклист экономиться куча времени.

Ну это все так лирика. Имхо, ты решил правильно, лучше брать одну тему, но раскрывать ее предметнее.
 
Почему я назвал именно так? Потому что я никогда не считал тем что делаю правильным или нужным во благо людям, я прекрасно осознаю что это делается для корыстных целей для обмана/кражи и т.п. и всё это ради денег, которые в итоге всех их губят, поэтому всё справедливо каждый получает своё...
А я тут с первых слов подумал был, что будет исповедь с последующим отречением от хака и уходом в монастырь :D
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Добавлена перелинковка в первом посте со статьёй на других форумах, т.к. везде разные комментарии и некоторые интересные вопросы и ответы на них.
 
Хм... Почитал, нового особо ниче не нашел, вот про работу с мускулом бы поподробнее это да - тоже много читал , но то ли не откладывается в башке, то ли не то читал, но вот оптимизация запросов и структуры базы это тема (отдельные слова можно бы сказать и про серверную настройку демона). От себя могу добавить кое что. Как показали некоторые годы писанинины всего че ни попадя, если вдруг пункт
1. Постановка задачи (хочу весь мир и чуточку больше)
как то не прет (а такое бывает особенно когда пишешь под бешенный заказ, когда заказчик сам не знает что еще захочет) - то лучше писать с максимальным упором на универсальность кода. Например пишешь функцию запроса к базе - разбей ее на несколько подфункций, отдельно для коннекта, отделно для выборки, отдельно для обработки, причем никак не привязанных к конкретной реализации базы. Во первых это может потом пригодиться, во вторых исправлять потом будет гораздо проще. Удачи Всем :)
 
сплойт не успеет отработать, а его время выполнения зачастую зависит от параметров железа юзера т.к. js выполняется на стороне клиента а не сервера.
еще + например, у FF3(в новых версиях), если js-код за определенное время не выполнился, то вылетает мессага с "подробным" описанием че за нах тупит
Обычно это сигнал на злавред(или расширение(реже), но там будет точно указано), сталобыть юзер отдаст линк на проверку аверам, и через некоторое время ботнет спалят %)))
Здесь сам js-гуано-криптодвиг и будет являться причиной детекта.. – ИМХО
Так что юзая паблик поделки, надо немного понимать(знать RTFM), какие могут быть нюансы "В КОДЕ", которые приводят(к примеру) к детекту аверами ботнета..
Думаю что начало очерка именно ап этом(не все есть гуд, что бесплатно), хотя и не хватает одного вопроса("подсознательного для всех")
Имеет ли право чел – пишущий: «куплю бота», называть себя специалистом в ботоводстве?

Само собой большая часть авторов пишут на английском, так как у наши криворуких программеров в большинстве своем все равно отстает в осваивание новых технологий.
На счет что у буржучиков лучше – там менталитет другой совсем
Там релизя баги(потенциальные кандидаты для создания уязвимости) или готовые уязвимости итд. чел имеет шанс получить "честную работу", донате, гранды, создать шаражку и присосаццо к бюджету выделяемому для мяса называющего себя секьюрити и раз в месяц релизить гуано статистику(которую тупо везде обсуждают.. при этом, чем стата хуже, тем ее больше обсуждать будут) итд.
У нас по такой схеме жить(вернее существовать) нет смысла, макс это тебе предложат переехать в Москву и там стать негром за 30к деревянных(ну еще бонусы - кофе, который надо купить) – это я про быт ав-трудяг на "ав-форумах" начитался %)))(линк не помню, но таких тем дохуя)
А с приватной хрени как минимум можно поиметь баксов 500-600(ИМХО), а потом и под хайдами высокими выложить на форуме
ЕСТЕСТВЕННО речь идет О СВОИХ разработках, кодинге итд.

ЗЫ: вообще советую, вот каждому попробовать написать хотя бы вот такой небольшой очерк(а не осуждать) как написал Волк или дополнить(если считаете себя элитнее), многое прояснилось бы - кто есть кто..
ЗЫЫ: чтобы осудить - много мозгов не надо, а вот что-то создать/написать.. и защитить "честь"...
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Решил рассказать про одну идею которую начинал ковырять но в итоге нет не времени не желания уже )

Ифрейминг, наброски нового способа, плюсы и минусы.
И так уважаемые кодеры) Сегодня всё будет по взрослому коротко и содержательно с сорцами. :)

Предистория:
Передо мной встала задача произвести ифрейминг сайта так что бы все страницы проифреймились быстро с минимальным временем и изменениями, что бы он был универсальный независимо от движка.

Идея:
Почему-то сразу я вспомнил про эту директиву auto_append_file и полез читать доки про неё как и в каким местах её можно использовать.
http://php.net/manual/en/ini.core.php
Код:
Name  	Default  	Changeable  	Changelog
auto_prepend_file  	NULL  	PHP_INI_PERDIR  	PHP_INI_ALL in PHP <= 4.2.3.
auto_append_file  NULL  PHP_INI_PERDIR  PHP_INI_ALL in PHP <= 4.2.3.

http://php.net/manual/en/configuration.changes.php

When using PHP as an Apache module, you can also change the configuration settings using directives in Apache configuration files (e.g. httpd.conf) and .htaccess files. You will need "AllowOverride Options" or "AllowOverride All" privileges to do so.

Оказалось эта директива используется как аргумент для php_value и может быть записан в .htaccess.

Алгоритмизация:
Тут то и вышло всё просто как мне по началу показалось мы смотрим во всех папках файлы .htaccess и во всех дописываем нашу строчку. Дальше закачиваем файл с ифреймом можно даже не в веб диру я его назвал .mcd с точкой что бы он казался системным и закачал в каждую директорию где был .htaccess т.к. нужно было указывать полные пути пришлось делать без путей.
Таким образом мы и получаем инклуд во все файлы движка нашего .mcd.

Сорцы:
Теперь немного сорцов. Мне пришлось доработать алгоритм т.к. не везде стоял php он был разных версий, а там были не состыковки, со значение php_value в итоге организовал проверку на php и его версии, самое главное добавил что бы он обрабатывал нужные расширения как php и делал при обращение к этим файлам инклуд ифрейма.
В итоге получилось вот так:
Код:
<IfModule mod_php4.c>
    AddType application/x-httpd-php .html .htm .shtml .phtml .php .asp
	php_value auto_append_file .mcd
</IfModule>
<IfModule sapi_apache2.c>
    AddType application/x-httpd-php .html .htm .shtml .phtml .php .asp
    php_value auto_append_file .mcd
</IfModule>
<IfModule mod_php5.c>
    AddType application/x-httpd-php .html .htm .shtml .phtml .php .asp
    php_value auto_append_file .mcd
</IfModule>

Заключение:
Дальше я уже столкнулся при тестах с проблемой таким как скачивание файлов через личер то есть пхп скрипт который через себя выдавал файлы они получались из-за инклуда битые, так же стало битой rss.
В итоге эксперимент был закончен не доведя до конца. Последние идеи какие были это сделать определение в самом файле .mcd он же php всё таки :)
Сделать пред буферизацию вывода и брать нескольких символов если это бинарные данные то ничего не выводить. Так же придумать с rss на <!xml но мне это показалось уже не более чем эксперименты, рабочий вариант из этого хороший не получилось сделать.

Outro:
Ну всё учитесь делать сами и мыслить не стандартно обычно ответы на самые сложные вопросы всегда в самом банальном, чем больше знаешь тем сложнее всё делаешь :)
Всем удачного кодинга ;)
 
Сегодня всё будет по взрослому
ну надо же)
А у меня вот появились детские вопросы...

Ну, во-первых. Задача поставлена довольно узко - есть сайт со многими, многими К страницами, куда нужно приткнуть ифрейм. Притом, ты имеешь права владельца -
т.е. права на запись в любой дире.
Так бывает далеко не всегда, даже при наличии шелла, верно?

Во-вторых, я не понимаю, какой толк от тотального инклуда в каждый файл, включая классы, либы и тп. не работающие непосредственно на вывод...Естественно, не в каждый - а куда?
Т.е. если делать универсальный ифреймер всех движков и народов, то понадобится еще и анализ кода всех файлов CMS, притом на автомате .........найти места для вставки кода.

Это глючно и морочно...имхо.
В-третьих,
Так же придумать с rss на <!xml
а что должен делать фид? совсем неясно...генерировать дор? (как побочный продукт)..

В четвертых, сделать файл с кодом ифрейма системным это здорово, но процедура вставки спалится примитивным скриптом защиты для WP, например..Проверка по крону целостности файлов и отстук хозяину в случае алерта.

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

Я видела в сети тучу шеллов с копирайтом Электа - они явно был залиты в джумлу, кажется, с наличием файлов инсталла (не помню уже).
Я слышала об ифреймере Мага, который через уязвимости ВП заливал что хотел на автомате. Я знаю и о других решениях такого же рода.
Это продуктивный путь, как показывает практика. Зачем нужен очередной велосипед? В чем преимущества?

Ну и о грамотности.
Когда я увидела ошибку в твоем юзербаре - меня это не удивило. Но когда я увидела этот же юзербар у Alexsiza -я поняла, что ошибка пошла в тираж... Не знаю, кто автор - но подправьте + нужно было бы снять галочку в требовании anti-aliasing(a) для шрифта, имхо...размыто. Либо сохранять не в jpg - а в gif.

И последнее (оффтоп). Спасибо, что заглянул на огонек - к нам, сирым и убогим...
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Ну, во-первых. Задача поставлена довольно узко - есть сайт со многими, многими К страницами, куда нужно приткнуть ифрейм. Притом, ты имеешь права владельца -
т.е. права на запись в любой дире.
Так бывает далеко не всегда, даже при наличии шелла, верно?

Во-вторых, я не понимаю, какой толк от тотального инклуда в каждый файл, включая классы, либы и тп. не работающие непосредственно на вывод...Естественно, не в каждый - а куда?
Т.е. если делать универсальный ифреймер всех движков и народов, то понадобится еще и анализ кода всех файлов CMS, притом на автомате .........найти места для вставки кода.

Это глючно и морочно...имхо.
В-третьих,
Цитата|Quote(Одинокий Волк @ 07.03.10, 03:21:18)
Так же придумать с rss на <!xml
*


а что должен делать фид? совсем неясно...генерировать дор? (как побочный продукт)..

В четвертых, сделать файл с кодом ифрейма системным это здорово, но процедура вставки спалится примитивным скриптом защиты для WP, например..Проверка по крону целостности файлов и отстук хозяину в случае алерта.

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

Я видела в сети тучу шеллов с копирайтом Электа - они явно был залиты в джумлу, кажется, с наличием файлов инсталла (не помню уже).
Я слышала об ифреймере Мага, который через уязвимости ВП заливал что хотел на автомате. Я знаю и о других решениях такого же рода.
Это продуктивный путь, как показывает практика. Зачем нужен очередной велосипед? В чем преимущества?
Дело в том что ответ на все твои вопросы один, ты ничего не поняла из того что написано :)

Ну и о грамотности.
Когда я увидела ошибку в твоем юзербаре - меня это не удивило. Но когда я увидела этот же юзербар у Alexsiza -я поняла, что ошибка пошла в тираж... Не знаю, кто автор - но подправьте + нужно было бы снять галочку в требовании anti-aliasing(a) для шрифта, имхо...размыто. Либо сохранять не в jpg - а в gif.
К сожалению мои знания русского языка не позволяют увидеть ошибку скажи пожалуйста где я поправлю сорец мой я делал его. По шрифту уж какой получилось в гимпе без набора очень сложно :)
 
хорошо. не спорю - у меня свой шкурный взгляд и свои цели, и даже свой (т..е. чужой, конечно) софт. потому мыслю ограниченно, ну и +знаний не хватает.
Меня интересует ифрейм, исключительно для простановки ссылок. Ну или заполучить шелл для доров.

Зря процитировал полностью.

по поводу юзербара.
запятая после "Я" - лишняя. это 100%.
Может, ты привык к объяснительным, типа.........................
(стерла)

"Я, Волков Олег Васильевич, не работаю по RU! а ты, %username%?"
тогда дополнение обрамляется запятыми.

Для юзербара
Выбери формат gif
Или png

Ну и..не уверена, что российский флаг - это и есть символ рунета.
Или ты по Украине и Белоруссии работаешь?)
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Про ошибку понял, действительно как-то подумал что правило раз в заявлениях так пишу)
 
Волк молодец прям слезы наворачиваются, две жизни и один человек - тут нечего сказать.. а не думал уйти из системы и завязать, изменить жизнь или уже настолько привязался что поздно что то менять?
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх