The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Локальная root-уязвимость в звуковой подсистеме ALSA"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от opennews (ok) on 17-Окт-17, 00:03 
В работающем на уровне ядра Linux коде звуковой системы ALSA выявлена (https://tools.cisco.com/security/center/viewAlert.x?alertId=...) уязвимость (CVE-2017-15265 (https://security-tracker.debian.org/tracker/CVE-2017-15265)), позволяющая непривилегированному пользователю выполнить код с правами ядра.


Уязвимость вызвана (https://bugzilla.suse.com/show_bug.cgi?id=1062520) обращением к буферу после его освобождения (use-after-free) в функции snd_seq_create_port() и может быть эксплуатирована через ioctl при выполнении из разных нитей команд создания и удаления порта. Обновление уже выпущено для Fedora (https://bugzilla.redhat.com/show_bug.cgi?id=1501880) и Debian Unstable. Также подготовлен патч (http://mailman.alsa-project.org/pipermail/alsa-devel/2017-Oc...), который включён в состав ядра Linux 4.14-rc5.


URL: https://tools.cisco.com/security/center/viewAlert.x?alertId=...
Новость: http://www.opennet.ru/opennews/art.shtml?num=47397

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


2. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –5 +/
Сообщение от я on 17-Окт-17, 00:05 
А потом люди идут в новости про ЯП и там пишут что Rust не нужен
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +1 +/
Сообщение от VINRARUS (ok) on 17-Окт-17, 00:09 
Как ненужен? Огнепанду не на Ассемблере же писать.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +3 +/
Сообщение от теперь по Борщеву on 17-Окт-17, 00:29 
да, расту в ядре самое место.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

93. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Аноним (??) on 19-Окт-17, 12:21 
Torvalds finger вашему Расту.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +6 +/
Сообщение от Аноним (??) on 17-Окт-17, 00:55 
У сектанта до сих пор подгорает?
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

10. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –2 +/
Сообщение от Аноним (??) on 17-Окт-17, 02:00 
И будут писать. Когда человек хорошо освоил один язык программирования и остановился на этом, не интересуясь более общей картиной, любая критика этого языка воспринимается им лично и эмоционально как попытка обесценить его знания и опыт.  Довольно странно считать Си или любой существующий язык безупречным (даже для какой-то узкой области применения) и отрицать наличие в нем изначальных недостатков и уже более неприемлемых компромиссных решений.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

30. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +9 +/
Сообщение от A.Stahl (ok) on 17-Окт-17, 09:37 
Ещё более странно считать Rust нормальным языком.


Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

36. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Мать драконов on 17-Окт-17, 10:55 
(внимание, вброс, слабонервным отойти от монитора)

JS - нормальный язык. На нем даже ПО для скафандров NASA пишут. Пруфы в гугле.

Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

38. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +4 +/
Сообщение от A.Stahl (ok) on 17-Окт-17, 11:00 
Вот только кроме ПО для скафандров на нём ещё всякую вебятину-тормозятину пишут. Причём в основном вебятину-тормозятину. Хороших применений ЯваСкрипта меньше, чем вимеров которые начали использовать vim не ради понтов.
Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

49. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –2 +/
Сообщение от Мать драконов on 17-Окт-17, 11:32 
> Вот только кроме ПО для скафандров на нём ещё всякую вебятину-тормозятину пишут.
> Причём в основном вебятину-тормозятину. Хороших применений ЯваСкрипта меньше, чем вимеров
> которые начали использовать vim не ради понтов.

Enterprise-софт, GitKraken, VS Code, Atom, Google Closure Compiler уже на JS написан и многое-многое другое.

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

53. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +2 +/
Сообщение от A.Stahl (ok) on 17-Окт-17, 12:07 
И что из этого является "хорошим применением"?
Ответить | Правка | ^ к родителю #49 | Наверх | Cообщить модератору

71. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от a1x (ok) on 17-Окт-17, 14:59 
Наверно так просто дешевле нанимать прогеров.
Ответить | Правка | ^ к родителю #49 | Наверх | Cообщить модератору

75. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Аноним (??) on 17-Окт-17, 16:43 
Что из этого Enterprise?
Ответить | Правка | ^ к родителю #49 | Наверх | Cообщить модератору

86. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Аноним (??) on 17-Окт-17, 21:08 
очевидно как минимум Enterprise-софт
Ответить | Правка | ^ к родителю #75 | Наверх | Cообщить модератору

45. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +1 +/
Сообщение от Аноним (??) on 17-Окт-17, 11:28 
> JS - нормальный язык.

С точки зрения веб-макаки — безусловно.

Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

11. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –3 +/
Сообщение от leap42 (ok) on 17-Окт-17, 02:32 
> Rust не нужен

если бы он кому-то был нужен, то мы увидели бы десятки крупных проектов, написанных на нём за последние 7 лет, но мы пока не увидели даже 3-х (да и те, что есть, выглядят не оч)

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

13. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Аноним (??) on 17-Окт-17, 02:36 
Популярное — значит лучшее?
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

14. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +3 +/
Сообщение от th3m3 (ok) on 17-Окт-17, 03:31 
За какие 7 лет? Его начали пилить только в 2010 году. Само ядро устаканилось только пару лет назад.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

35. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +3 +/
Сообщение от hello on 17-Окт-17, 10:33 
Ну да, PHP наше все
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

54. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +3 +/
Сообщение от Crazy Alex (ok) on 17-Окт-17, 12:07 
Рано судить. Большие проекты становятся большими долго. Хотя лично я считаю, что эта штука слишком извращённа чтобы стать мейнстримом, и в основном решает проблемы, которых и так нет, если писать на любых современных языках в современном стиле.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

84. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от pripolz on 17-Окт-17, 18:16 
Потом люди идут в новости про баги и пишут, что Rust нужен.
Означает ли это наличие ТЕОРЕТИЧЕСКИХ багов, которые выискивали в лабораториях, в уже написанных, отлаженных и ПРАКТИЧЕСКИ безглючных системах?
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

7. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +6 +/
Сообщение от Анонимм (??) on 17-Окт-17, 00:57 
А где хоть полслова, что дыра выгружаема и находится в модуле snd-seq.ko ? (если звук собран модулем)
и обход проблемы - легче воздуха: rmmod, заблочить загрузку модуль или просто удалить сам его файлик
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +1 +/
Сообщение от Аноним (??) on 17-Окт-17, 01:43 
Вот: Посл
Наслаждайтся.
Когда найдут уязвимость в модуле сетевой или видеокарты не забудь тоже выгрузить или удалить сам его файлик.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +2 +/
Сообщение от Анонимм (??) on 17-Окт-17, 01:57 
Вам знакомо слово workaround?
и не во всех Линух сегментах сетевуха и звуковуха имеют равный вес
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

12. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от grsec (ok) on 17-Окт-17, 02:35 
> удалить сам его файлик

Как вы себе представляете вектор развития атаки, если файлик не удален?

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

21. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Анонимм (??) on 17-Окт-17, 07:26 
> Как вы себе представляете вектор развития атаки, если файлик не удален?

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

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

25. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от нах on 17-Окт-17, 09:03 
> В ядре есть автозагрузка модулей по запросу.

И неработающий сто лет как blacklisting. Разьве что алиасом /bin/false ему повесить, но удалить ненужно-модуль куда надежнее.

А помимо ведра, есть еще чудесные стартап-скриты, и вот вряд ли ты лазишь в sysconfig/sound (и еще стопиццот файлов там), если после установки системы у тебя звук работает.
А там, бывает, такой вот подарочек:
# Load ALSA sequencer modules at boot-up? (yes/no)
# Sequencer modules are necessary only for handling MIDI devices.
# If you don't need MIDI, leave here no.
#
LOAD_SEQUENCER="yes"

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

И да, пщпщ, без которого нынче никуда, тоже норовит чего-нибудь автопоназагружать.

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

26. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Анонимм (??) on 17-Окт-17, 09:11 
> Разве что алиасом /bin/false ему повесить...

у кого есть время/желание вешать алиасы на кривые ненужные модули - никто не мешает этим заниматься. Если же модуля нет на фс вообще - то загрузить его куда сложнее.

Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

44. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от нах on 17-Окт-17, 11:26 
> у кого есть время/желание вешать алиасы на кривые ненужные модули

ну я бы вот рекомендовал - повесить, а то завтра и ещшо штонить найдут. Очевидно что играющих с секвенсерами мало интересовало что их внезапно могут поломать.
Речь была немножко о другом - что штатные средства, якобы предназначенные избавить нас от автозагрузки чего ни попадя, необратимо поломаны еще со времен ведра 2.4.0, и ни off, ни blacklist не защищают от такого - только совершенно контр-интуитивный ручной алиас на false.

> Если же модуля нет на фс вообще

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


Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

88. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Аноним (??) on 17-Окт-17, 21:26 
> предсказуемость и прогнозируемость работы системы в том числе.

Не понял. Это не круто?
Вирус: осталось только два патрона, всего обложили сегфолтами, сцу.. !


Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

24. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –3 +/
Сообщение от iCat (ok) on 17-Окт-17, 08:32 
Вот такие вот удаляторы, как правило, бухать не прекращают, даже зная о смертельной опасности, которую несёт алкоголь.
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

27. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +4 +/
Сообщение от Анонимм (??) on 17-Окт-17, 09:13 
> Вот такие вот удаляторы, как правило, бухать не прекращают, даже зная о
> смертельной опасности, которую несёт алкоголь.

(в августе ровно 10 лет прошло как прикасался к C2H5OH-нетехническим изделиям)

А если Вы не признаёте само понятие как быстро откостылить проблему (workaround) - то видимо, Вы богатый человек и у Вас есть куча времени заниматься всякими мелочами.
Рад за Вас!

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

62. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Аноним (??) on 17-Окт-17, 13:31 
Завязывай бухать технический спирт!
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

66. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Анонимм (??) on 17-Окт-17, 14:19 
> Завязывай бухать технический спирт!

Какой спирит!!?? только одеколончик!
и то плату промыть от флюса :)

Ответить | Правка | ^ к родителю #62 | Наверх | Cообщить модератору

85. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –2 +/
Сообщение от пох on 17-Окт-17, 20:49 
> в августе ровно 10 лет прошло как прикасался к C2H5OH-нетехническим изделиям)

красиво жить не запретишь. А мне вот на кокс вечно не хватает, приходится боярышник употреблять :-(

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

92. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от iCat (ok) on 19-Окт-17, 10:17 
> (в августе ровно 10 лет прошло как прикасался к C2H5OH-нетехническим изделиям)
> А если Вы не признаёте само понятие как быстро откостылить проблему (workaround)
> - то видимо, Вы богатый человек и у Вас есть куча
> времени заниматься всякими мелочами.

Респект за трезвость.
А вот по поводу "откостылить"... Тут "мы с вами не совпадаем"...
Я предпочитаю решать проблемы, а не "затыкать дырочки"...
Тем более, что методы решений всегда есть в открытом доступе...


Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

94. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Анонимм (??) on 20-Окт-17, 14:23 
> А вот по поводу "откостылить"... Тут "мы с вами не совпадаем"...
> Я предпочитаю решать проблемы, а не "затыкать дырочки"...

Прекрасно. Я тоже за решения.
Тогда, возможно, Вы выскажитесь по поводу _решения_ проблемы монолита в принципе,
когда дырка в незначительном модуле грозит локал-рутом кому ни попадя.
Речь о микроядерной архитектуре:
https://www.opennet.ru/openforum/vsluhforumID3/112526.html#107

Ответить | Правка | ^ к родителю #92 | Наверх | Cообщить модератору

20. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +4 +/
Сообщение от Аноним (??) on 17-Окт-17, 07:17 
Более того, это модуль поддержки аппаратных midi-секвенсеров, которые в современном железе отсутствуют, так что в большинстве случаев он может быть выгружен без потери функционала.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

23. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +1 +/
Сообщение от Анонимм (??) on 17-Окт-17, 07:28 
хорошее уточнение
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

37. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –2 +/
Сообщение от Аноним (??) on 17-Окт-17, 10:59 
Помогите! Сегодня родственники придут праздновать день рождения дедушки. Будут петь караоке. А воспроизведение kar-файлов отвалилось после удаления модуля :-( Как вернуть модуль? Система Linux Mint 18. Меня выпорят, если я не починю караоке
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

42. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Анонимм (??) on 17-Окт-17, 11:18 
попробуй венду?
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

46. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Ложечка on 17-Окт-17, 11:29 
Нет времени объяснять, пересобирай ядро, малец.
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

52. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Ordu email(ok) on 17-Окт-17, 11:40 
timidity спасёт отца русской демократии. Это программный midi-sequencer, ты можешь проигрывать свои караоке через него. Или быть может, если его сопрячь с каким-нибудь ffmpeg, то из kar файлов можно сделать mkv, которые будут тебе и текст на экране рисовать, и звуки проигрывать. У тебя есть ещё целый день на то, чтобы разобраться как это сделать.
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

55. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Аноним (??) on 17-Окт-17, 12:18 
Переустановите пакет linux-image-версия-generic, например так:

sudo apt-get install --reinstall linux-image-$(uname -r)-generic

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

Затем загрузите модуль:

sudo modrobe snd-seq

Или же перезагрузитесь.

Если есть обновления ядра - просто обновите его и перезагрузитесь в обновлённую версию.

P. S. Категорически не рекомендую удалять из системы файлы, которыми заведует пакетный менеджер, только если это не какие-нибудь конфиги, в ненужности которых вы уверены. В случае с модулями ядра намного лучше отредактировать файл /etc/modprobe.d/blacklist.conf, дописав туда строчку с названием модуля, загрузку которого вы хотите запретить.

Удачи!

Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

58. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Аноним (??) on 17-Окт-17, 12:37 
> sudo apt-get install --reinstall linux-image-$(uname -r)-generic

Малость ошибся, должно быть так:

sudo apt-get install --reinstall linux-image-$(uname -r)

Суффикс "-generic" - это часть версии ядра, и uname -r его подставит.

Ответить | Правка | ^ к родителю #55 | Наверх | Cообщить модератору

65. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Zenitur (ok) on 17-Окт-17, 14:15 
Хорошее руководство! Перепишу в блокнотик.
Ответить | Правка | ^ к родителю #58 | Наверх | Cообщить модератору

67. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Аноним (??) on 17-Окт-17, 14:21 
> modrobe

Опечатка: должно быть modprobe.

Ответить | Правка | ^ к родителю #55 | Наверх | Cообщить модератору

15. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +6 +/
Сообщение от Аноним (??) on 17-Окт-17, 03:37 
Альт не подвержен?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

19. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +10 +/
Сообщение от Аноним (??) on 17-Окт-17, 07:16 
Альт и без альсы работает :) https://ru.wikipedia.org/wiki/%D0%90%D0%...
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

22. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Анонимм (??) on 17-Окт-17, 07:27 
плюсов этому анониму!
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

64. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –4 +/
Сообщение от Muchael Shizorin email on 17-Окт-17, 13:37 
> Альт не подвержен?

Конечно нет. У нас не принято включать в ядре поддержку всяких новомодных фич типа ALSA.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

70. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –1 +/
Сообщение от Анонимм (??) on 17-Окт-17, 14:33 
>> Альт не подвержен?
> Конечно нет. У нас не принято включать в ядре поддержку всяких новомодных
> фич типа ALSA.

https://en.wikipedia.org/wiki/Advanced_Linux_Sound_Architecture
Initial release     1998; 19 years ago

В альте, небось, ещё 2.2 линукс...

Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

78. "Локальная root-уязвимость в звуковой подсистеме ALSA"  –2 +/
Сообщение от AlexYeCu_not_logged on 17-Окт-17, 16:52 
>Конечно нет. У нас не принято включать в ядре поддержку всяких новомодных фич типа ALSA.

Спас-бросок провален: ваши противники оказались слишком юны.

Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

91. "Локальная root-уязвимость в звуковой подсистеме ALSA"  +/
Сообщение от Вареник on 18-Окт-17, 14:52 
Еще и 50 лет не настоялось.
Ответить | Правка | ^ к родителю #64 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру