sfw
nsfw

мопед не мой

Подписчиков:
1
Постов:
55
3x-ui это удобная централизованная панель управления клиентами Shаdоwsоcks-а - созданного для oбхoда цeнзуpы.
Её основные фичи:
- Мониторинг состояния системы.
- Мониторинг подключенных клиентов.
- Поддержка многопользовательской и многопротокольной работы.
- Статистика трафика, ограничение трафика и ограничение времени работы для каждого клиента.
- Поддерживает применение SSL-сертификата для домена в один клик и его автоматическое продление (при наличии домена).
1. Установка на linux сервер.
apt update && apt upgrade -y
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)
В конце очень быстрой установки, мы получим логин и пароль. 
Либо, мы сами вводом свои данные "логин-пароль-порт".
Панель управления 3X-UI находится по адресу: http://yourip:2053 (или ваш порт).
2. Получаем SSL на панель
Расскажу от 3 способах получить SSL, первый, встроен в скрипт 3X-UI. Поэтому начнем с него.
2.1. Через X-UI:
напишем команду в консоли:
x-ui
Выбираем пункт 15 и введем наш домен, к которому прилинкован IP сервера.
The OS release is: ubuntu
3X-ui Panel Management Script
O.	Exit Script
1.	Install x-ui
2.	Update x-ui
3.	Uninstall x-ui
4.	Reset Username & Password & Secret Token
5.	Reset Panel Settings
6.	Change Panel Port
7.	View Current Panel Settings
8.	Start x-ui
9.	Stop x-ui
10.	Restart x-ui
11
Переходим в панель 3X-UI по адресу yourdomain.com:2053(или тот порт, который вы указали при установке). В разделе Panel Settings прописываем пути к сертификатам SSL:
/root/.acme.sh/your_domain_ecc/fullchain
/root/.acme.sh/your_domain_ecc/your_domain
Пример:
2.2. Через Cloudflare. Прилинковываем наш домен к Cloudflare и выпускаем сертификат на 15 лет через их сервис
2.3. Через Acme:
apt install cron  && apt install socat
curl https://get.acme.sh | sh -s email=mail@mail.com
mkdir -p /var/lib/certs/
DOMAIN и SUBDOMAIN1.DOMAIN — пишем наши домены и суб-домены. Которые мы прилинковали заранее к нашему IP. Если суб-домены не нужны, удаляем их.
~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --standalone \
-d DOMAIN \
--key-file /var/lib/certs/key.pem \
--fullchain-file /var/lib/certs/fullchain.pem
Добавляем наши полученные сертификаты в панель 3X-UI, вместе с доменом.
3. Создаем VPN профайлы
= General Actions
Menu	Enabled
Remark
Host-1
Host-2
Host-3,3x-ui,shadowsocks,длиннопост,Кликабельно,Linux,Операционная система,мопед не мой
3.1 ShadowsocksПереходим на вкладку Inbounds > Add Inbound
Remark — любое рандомное название
Protocol — shadowsocks
Нажимаем Create

3.2 VLЕSS + Rеаlity
Remark — любое рандомное название
Protocol — vless
Port — 443
Ниже, где Transparent Proxy ставим галочку на Reality
uTLS — Chrome
Dest — microsoft.com:443
Server Names — microsoft.com,www.microsoft.com
И нажать кнопку Get New Key > Create

3.3 Если у вас занят 443 порт, то пользуем альтернативу: VLESS/VMESS no 443
Порт — пусто (по умолчанию)
Безопасность — TLS
Протокол передачи — TCP
Сертификат — сертификат с панели, который мы ранее выпустили
uTLS — random

Ну и вы можете сами экспериментировать с протоколами )
4. Безопасность сервера
4.1 Защитим сервер от взлома через брутфорс:
apt install fail2ban -y && apt install ufw -y && apt install nano -y
touch /etc/fail2ban/jail.local && nano /etc/fail2ban/jail.local
[sshd]
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
logpath = /var/log/auth.log
findtime = 600
maxretry = 3
bantime = 43200
Нажимаем ctlr + x, далее Y и enter, чтобы сохранить.
4.2 Отключаем двухсторонний пинг

Чтобы улучшить нашу маскировку, отключим пинг

 nano /etc/ufw/before.rules
Меняем концовку следующего выражения с ACCEPT на DROP:
-A ufw-before-input -р icmp --icmp-type echo-request -j DROP,3x-ui,shadowsocks,длиннопост,Кликабельно,Linux,Операционная система,мопед не мой

4.3 Включаем фаервол

Чтобы включить фаервол, нужно заранее выписать все используемые порты на сервере, для этого мы установим netstat и посмотрим какие порты нужно открыть:
apt install net-tools
netstat -ntlp | grep LISTEN
Смотрите порты, которые идут после 0.0.0.0:порт или IP_адрес вашего_сервера:порт, например:
0.0.0.0:993
76.20.7.12:53:::22
Их необходимо открыть в UFW или через панель управления вашим сервером/хостингом. 
Смотря как это реализовано у вас. 
Например:
ufw allow 22/tcp && ufw allow 443 && ufw allow 40000 && ufw enable
Подтверждаем через Y + Enter
Напоследок очистимся и перезагрузимся:
apt update && apt upgrade -y && apt autoclean -y && apt clean -y && apt autoremove -y && reboot
Теперь можно отсканировать QR код в панели управления и пользоваться vрn на Shаdоwsоcks на вашем устройстве.

Фоны старых квестов — методы разработки, секреты, советы

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Сегодня мы исследуем вопрос разработки фонов «как в старых адвенчурах». Это не совсем то, чего вы от меня ожидали. Однако, очередная часть «Галопа Пикселя» задерживается по двум серьезным причинам. Во-первых, главы посвященные анимации требуют — качественной анимации, иначе они не смогут претендовать на лавры материала обучающего. Во-вторых, «галопу» необходима ещё одна публикация до начала цикла об анимации, который уже находится в разработке. Связано это с тем, что я занимаюсь не только классическим пиксель-артом, но и тем, что выходит за пределы канонических разрешений, и у меня, определенно, есть чем поделиться. К сожалению, такой тип пиксель-арта сейчас более моден, чем классика, если судить по откликам публики.

Давайте, впрочем, вернемся к теме сегодняшней публикации. Считаю это маленьким открытием, и мне непременно нужно поделиться им с теми, кто собирается соединить некоторый отрезок своей жизни с тем, что может называться классической адвенчурой. Быть может это поможет вернуть на рынок игры, которые немного оттеснят «хипстерский пиксель» заменив его на то, что может напомнить времена лучших игр от «Westwood Studios», «Sierra» и «Lucas Arts». Предположу вскользь, что множество художников и так знают это. И, тем не менее — я не заметил публикаций на эту тему. Наша братия не спешит делиться своими секретами, сохраняя некую монополию на собственные открытия.

Я хотел приурочить эту статью к началу разработки собственной адвенчуры. Но кто знает, когда это произойдет? А вам эта информация может помочь уже сейчас. Стоит ли откладывать? Думаю, что нет. Лопаты в руки.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой

Прелюдия


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

Поскольку я не одобряю мимолетные связи, мой взор всё чаще устремляется назад в прошлое. И чем дальше я двигаюсь по реке времени, тем слаще и притягательней для меня становится то, что я называю классикой. Классика в моём понимании – игры до того момента когда весь мир перешел на режим SVGA, отчалив и навеки покинув обитель разрешения меньшего — VGA. Чаще всего игры того времени использовали разрешение 320х200 пикселей.

Меня всегда занимал вопрос – как именно делались эти фоны. В качестве примера я приведу изображения из игр «Westwood Studios». Это мой фаворит. Контора, повлиявшая на мое творчество настолько сильно, что я решил делать игры именно в этом стиле. Художники которой определили вид и цвета моих работ на десятки лет вперед. Я часто слышал об этих фонах – «какой изумительный пиксель-арт».

Давайте сразу перейдем к кульминации не характерной для моих публикаций. Я не уверен, что это чистый пиксель-арт. К этому выводу я пришел два месяца назад. Пришел окончательно. Сформировал объяснение. Выработал сходную технику. Сейчас я представлю вам свои наработки, а вы определите для себя, прав я или нет. Хочу сразу отметить, что это относится только к фонам. Вне сомнения интерфейс игр, оформление, шрифты, игровые персонажи и их анимация – это стопроцентный пиксель-арт, не разбавленный и хорошей крепости. Здесь у меня сомнений нет. И даже если я ошибаюсь в своей теории, это никак не помешает вам делать фоны похожие на фоны старых игр.

В качестве точки опоры мы возьмем несколько изображений из легендарных игр «Legend of Kyrandia» и «Lands of Lore». Я считаю их пиковыми на тот момент, с точки зрения проработки арта, с точки зрения анимации и цвета. Не говоря уже о техническом исполнении.

Spark
Freeze Lightning Fireball Hand of Fate Mist of Doom
I have need of a champion. Who among you Mill ; volunteer to serve me?
flk'shel Michael
Kieran Conrad
Protection:
Might:,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


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

Со временем я переключился на 3D, поучаствовал в десятках проектов, специфика которых предполагала использование меня как спеца по части 3D, текстур, и гибридных техник создания графического контента. Но эта тропа на долгие годы увела меня от мира изобразительного искусства, и добрый десяток лет я блуждал во тьме коммерческих игр.

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

Путь


Давайте быстро проанализируем то, чем характерен пиксель-арт и чем характерны изображения старых игр. Во-первых – лимитированная палитра, редко выходившая за 256 цветов в один момент времени на экране. Во-вторых – резкие формы с фактически ручным сглаживанием в несколько пикселей по контурам этих резких форм. В-третьих, разрешение 320х200. Как нам получить нечто подобное?

Первое что приходит на ум – уменьшить изображение. Давайте проведем эксперимент. Возьмем одну из моих ранних работ. И уменьшим её.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


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

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Теперь пробуем сохранить изображение в индексированной палитре посредством сохранения изображений для сети (Save as Web). Сколько бы мы не выбирали цвета – это не дает нам необходимого изображения, хотя оно и похоже на нечто старое. Весьма отдаленно, надо отметить. Даже если сохранить Джима в 32-ух цветах, он никак не напоминает пиксель-арт.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Существует режим фильтрации – без сглаживания. Иначе Nearest Neighbor (preserve hard edges). То есть изображение сохраняется максимально близким к оригиналу. Без сглаживания, без адаптации изображения. Без какой-либо фильтрации.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Примечание: Это ваша дверь в мир старого. Не то чтобы она сразу доведет куда нужно, но без неё точно не обойтись. Никак.
,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


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

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Парадоксальность ситуации заключается в том, что если вы получаете пиксель-арт из изображения или подготовленного вами арта – вы негодяй и жулик. Но если вы сделаете тоже самое в стиле «pixel by pixel» то вы будете молодцом и хорошим парнем, который намучался порядочно, но смог сделать такую-же работу, маниакально выставляя пиксель за пикселем на виртуальный холст. Разумеется преобразованное таким образом изображение ещё не пиксель-арт, любой артист работает аккуратнее делая всё руками. И тем не менее… допустим вы разработчик игр. У вас жмут сроки, и вам нужно выпустить продукт через месяц. Есть кто-то кто полагает, что ваши крики «зато я сделал всё честно» будут волновать окружающую вас публику? Волновать вашего потребителя? Ему и дела нет, как и что вы делаете. Зато он легко скушает вас с селёдочкой под водочку, и даже не поперхнётся если вы сваляете дурака, и задержите релиз.

Таким образом изготовление пиксель-арта для доказательства, что ваш пиксель больше, и изготовление пиксель-арта, как контента поставленного на поток в рамках разработки масштабного проекта – две больших разницы. Никому не надо честно. Надо в срок, по хорошей цене, чтобы у потребителя карман не треснул, и чтобы вкусно было. Именно в срок и вкусно привело меня к мысли озвученной выше. О том, что изображения старых игр частенько готовились на базе арта.

Теоретически Джима можно было бы превратить в пиксель-арт, просто поработав с изображением. Через три-четыре часа он бы стал совершенно другим. Но задача у нас поставлена другая. Нам необходимо понять, как именно делались фоны для старых адвенчур, а не сделать нечто похожее, существенно доработав затем полученный результат. У меня довольно давно появилась уверенность, что изображения практически не обрабатывались дополнительно, потому как это удлинило бы цикл разработки игры, а это – не выгодно. Самый главный мотив разработчика – выгода. Самый главный мотив – время разработки и отсутствие промежуточных этапов. Понятие выгоды можно трактовать как угодно. И это не обязательно денежная или материальная выгода. Потратил на разработку контента меньше времени, освободил два или три месяца на другую задачу – выгода.

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

Ответ прост. Искать. Пробовать разные стилистики и прогонять их через процедуру уменьшения и последующего сохранения в индексированной палитре.

Это был довольно длительный этап, который долго не приводил к нужным результатам. Раз за разом. Последний год я стал усиленно рисовать. Попробовал разные стили и стал постепенно склоняться к классической схеме рисования концептов и графики. Без использования 3D, без каких-либо финтов и хитростей. Как и в случае пиксель-арта я опустился на самое дно, к истокам. И предположил, что будет неплохо научиться рисовать одной единственной кистью, делая это так, чтобы это напоминало традиционную живопись.

Традиционный мазковый подход привел меня к следующим изображениям. Сохранение их по указанному выше способу приводило к следующим результатам.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Грубая мазковая техника не подошла, но какой-то пульс уже начал прощупываться. Я добавил детализации и получил следующий «фон». Который также оказался ошибочным, т.к. излишний фото-реализм в работе оказался не очень хорош.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Проанализировав художников Вествуд я решил смягчить резкие мазки, сделать их более плавными. Это был первый фон, который наконец-то выдал нормальный результат. Это было практически то, что нужно. Этот фон уже не нужно обрабатывать. Разве что добавлять интерактивные объекты.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой

Примечание к рисунку: Интеграция и сравнение фонов будет проведена чуть ниже, сразу после окончания презентации работ по персонажам (похожим на персонажей игры «Lands of Lore»)

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

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

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Его я рисовал намеренно склоняясь к той палитре, которой характерны многие изображения квестов от «Westwood Studios». Мягкие градиенты на коже, четкое и холодное контровое освещение c аккуратными штрихами, там где это необходимо (волосы, акценты на глазах). То есть даже в исходнике Саймон уже напоминает одного из героев «Lands of Lore». Финальный аккорд – уменьшение.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Затем небольшая партия выполненная ансамблем индексированной палитры.

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Будучи соединенным с классическим пиксель-артом в тех местах, где к этой несуществующей игре добавляется интерфейс мы имеем полную иллюзия графического контента старых игр. Если бы «Westwood Studios» делали бы игру по нашему любимому «Светлячку» тогда, то скорей всего она выглядела бы примерно так. Но мы должны убедиться, что всё так, а не иначе, не так ли?

Давайте интегрируем наши изображения в интерфейс и оформление игр «Westwood Studios» — «Legend of Kyrandia» и «Lands of Lore».

I have need of a champion. Wns among you Mill volunteer to serve me?
flk'shel	Michael
15	6
8	10
5	15
Kieran
Conrad
So! Vou worthless dogs have come to your deaths!
Spark
Freeze Lightning Fireball Hand of Fate Mist of Doom
Spark
Heal
Freeze
Lightning
Fireball
Hand of Fate
Mist of


Слева представлен десатурированный вариант (обесцвеченный), а справа с яркой приветливой гаммой. Также Саймон уменьшен и помещен в то место, где ранее находилась иконка Конрада (персонаж игры «Lands of Lore»). Вполне очевидно, что такой арт мог бы быть в игре, и что он выглядит довольно гармонично. В принципе, можно было бы сохранить его в существенно меньшей палитре по цветам, а затем немного поработать кисточкой, чтобы арт был совершенно похож на арт художников из Вествуд. Очередь за фоном.

..
I think I^m 9ettin9 a rash.

i.JaL ,-%y.r.rT -	
(Dark forest	
V-^-~M I ■«» i«A |_Vcl. - 1	(iifife '
JL

I think I'm 9ettin9 a rash.
- -J •* - -S^S-	.	4
Dark forest
	■ ftife i-gl V 1 - fc. 1 5»,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Точно также — уменьшаем изображение в соответствующем режиме, и сохраняем в индексированной палитре. Верхний вариант слишком пастельный, поэтому имеет смысл подбавить яркости цветов, и можно видеть, что Брендон (персонаж игры «Legend of Kyrandia») вполне мог бы бродить и по такому миру. То есть картинка не выглядит чем-то инородным.

Финал


Из всего вышесказанного можно сделать вывод, что изначально фоны художников «Westwood Studios» были классической живописью. Затем оцифрованной и сохраненной в той палитре, которую использовала игра. После этого добавлялся интерфейс, персонажи и другие элементы. Анимация также делалась на базе этих работ. Она не содержала множество кадров, но была крайне детально проработана. Как? Теперь мы знаем.

Я написал эту статью под влиянием порыва разделить с вами эту небольшую радость маленького, но очень важного для меня открытия. Также я довольно часто встречал в сети вопросы, как именно делаются изображения, которые походят на старые игры? Что нужно сделать чтобы изображение было таким? Ответ прост. Прогресс ушел далеко, цветов стало больше, и изменились принципы работы с изображением. Больше не нужно было экономить, больше не нужно было умещаться в рамках низких разрешений, и внешний вид игр изменился. Поэтому чтобы имитировать их необходимо кланяться истокам, а именно:

• Уменьшать изображения до размера старых разрешений (320х200)
• Уменьшение изображение производить в соответствующем режиме.
• Сохранять изображение в индексированной палитре, имитируя ограничения тех лет.
• Готовить исходное изображение в определенной стилистике.

Удивительно то, что занятия пиксель-артом стимулировали меня на занятия классическим рисунком. Можно сказать, что во многих случаях именно пиксель-арт подсказал мне как лучше рисовать в большом разрешении. И это не единственное из моих маленьких открытий. Похожая статья пойдет следом. Где мы научимся готовить графику как в «Fallout». Не современном, разумеется. А в том самом. Старом.

Безусловно данная публикация не поможет сделать подобные фоны человеку техническому, не облеченному умением рисовать. Однако она может подсказать к какому художнику вам стоит обратиться, у кого вам стоит заказывать арт, и как он должен выглядеть. За последние годы ко мне не раз обращались разные программисты, которые знали, что хотят сделать, но не знали как. Это, кстати, довольно частое явление, когда во главе проекта стоит человек технический. Мне не хватает технической смекалки и практического склада ума. Но по крайней мере я могу разделить с вами те знания что имею.

Переводим дух


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

К чему я это? У вас могло сложиться впечатление, что всё вышесказанное и показанное сложно. Отнюдь. Для человека, который ещё только начинает путь – да. Но для того, кто рисует – нет. Каждый из таких фонов может создаваться за один рабочий день (тех о которых я писал выше). Восьмичасовой. Это будет не самый честный вид пиксель-арта, но это – рабочий день. Это важно. Две работы ниже, совсем другое дело…

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой

,Weilard,длиннопост,Pixel Art,Пиксель Арт, Пиксель-Арт,habr,мопед не мой


Пиксель-арт производимый с нуля занимает существенно больше времени. Эти две работы создавались, примерно, по 16-20 часов каждая, могли бы занять и больше, если бы не было соответствующего опыта. Безусловно, они срубили свои овации на соответствующих ресурсах. Но это именно «мой пиксель больше», а не что-либо ещё. Публичное доказательство – «я умею». Смею напомнить, что подобные амбиции и размахивание квадратиками не имеет ничего общего с разработкой контента для игр.

Приведу аналогию. Рыцарский турнир. На нём рыцари сражаются между собой, а где-то сверху сидит знатная дама, и, в общем и целом, победившему рыцарю может что-то обломится. Если он будет вести себя некрасиво, то скорей всего его бой не придется по душе ни даме, ни публике вокруг. Стало быть надо проявить себя во всей красе, показать все красивые приёмы, что вы умеете делать, как-то картинно упасть, снова вскочить, нанести пару эффектных ударов, парировать удары противника… словом – устроить прекрасный спектакль.

Работка игр это не бой на потеху публике и не рыцарский турнир. Это побоище. Битва. И ваша задача – выжить в этой битве. Когда вам нужно выживать, уж поверьте, вам не до красивых ударов. Вы сделаете всё, что угодно, чтобы вернуться домой. Ваше «возвращение» есть игра, ушедшая в печать. Никто не увидит ваших страданий, вашего пота и крови пролитой в сражении с ней. Все увидят лишь финальный результат.

К чему это я? Берегите себя. Оптимизируйте работу. Находите решения чтобы ускорить разработку, удержать её на нужном уровне качества. Ну и иногда заходите на турнир… помахать пикселем. Может быть вам тоже обломится.

Как я нашел в публичном доступе исходники нескольких сервисов ФНС

Предыстория
Возьмём приложение «Проверка чека» и разберемся что оно делает и зачем ваще кому-то понадобилось проверять чеки с помощью приложения.
Суть приложения «Проверка чеков»
Я не помню как это работало раньше, но с 2016-2017 годов, благодаря 54-ФЗ «О применении ККТ» появились некие ОФД с целью «...осуществления операций по приёму, обработке, хранению и передаче фискальных данных в ФНС», а всех кого только можно обязали использовать кассовое оборудование, генерирующее те самые фискальные данные и что немаловажно, обязали эти данные посредством ОФД передавать в ФНС.
Если у вас тоже немного припекает от всех этих аббревиатур, то вот вам терминальная стадия аббревиатуринга в лице названия организации которая отвечает за приложение «Проверка чека» — ФГУП ГНИИВЦ ФНС РФ.
К этому моменту — мы еще вернёмся, кстати.
Проверка чеков ФНС России («3
ФГУП ГНИВЦ ФНС России
Покупки: № 143 в этой категории
★ ★ ★ ★ ★ 4,8 • Оценок: 608
Бесплатно,информационная небезопасность,дыра,уязвимость,новости,habrahabr,длинопост,информационная безопасность,it,мопед не мой,habr,Российская федерация,страны,копипаста
Страница приложения «Проверка чеков» в App Store
Прикладной смысл вышеописанного очень лёгко понять на примере сервиса заказа еды.
После заказа вы получаете на почту электронный чек, это и есть те самые фискальные данные. Отправляет их в ваш адрес, однако, не сервис заказа еды, а именно ОФД, которое используется сервисом, в данном случае — Яндекс
Яндекс ОФД
кассовый чек / приход	19.03.2021 23:28
Общество с ограниченной ответственностью "ЯНДЕКС.ЕДА"
https://eda.yandex.ru
127410, Москва г, Алтуфьевское ш 9, дом № ЗЗГ
ИНН	9705114405
Налогообложение	ОСН
№	Наименование	Сумма
1.	Сэндвич Сабвэй Мелт	354.00Р х 2 = 708.00Р
Сумма с НДС 0%
Любой подобный чек всегда содержит несколько обязательных идентификаторов в натуральном виде и в виде QR-кода, который можно отсканировать с помощью исследуемого нами приложения «Проверка чека».
В итоге, в приложении «Проверка чека», появляется электронная копия данного чека и тут я хочу обратить ваше внимание на атрибутивный состав кортежа с данными, а именно, на полный и детальный список чего и когда и за сколько денег моя персона приобрела, это — важно.
Но всё бы ничего, если бы не один недавний апдейт данного поделия, который и привёл меня в ужас. До недавних пор приложение оперировало лишь теми данными которые ты сам соизволил туда засунуть путём сканирования QR-кодов и не представляло, ни особого интереса, ни особой угрозы личной безопасности.
Всё изменилось две недели назад после обновления 2.15.0 в рамках которого был выкачен функционал «отображение чеков из сервиса Мои Чеки Онлайн».
История версий приложения «Проверка чека»Обновление 2.15.0
Если пройти аутентификацию в приложении «Проверка чека» указав номер телефона, который вы так же используете в популярных сервисах, например, в Яндекс.Еде, Яндекс.Такси, Самокате, Ситимобиле и других, то в разделе «Мои чеки» автомагически будут отображены все ваши чеки по всем операциям в этих сервисах за «всё время».
В моём случае, это порядка 400 чеков, каждый из которых содержит детальный набор «сколько, за что, когда и куда».
Мне сразу же стало интересно насколько хорошо подобный массив данных защищен и может ли предполагаемый злоумышленник получить несанкционированный доступ к нему.
Для исследования я поставил в разрыв между интернетом и приложением «Проверка чека» простой прокси и записывая сетевую активность приложения потыкал в кнопки.
Довольно быстро выяснилось, что эндпойнт с данными находится по адресу irkkt-mobile.nalog.ru:8888 на котором живёт простейшее приложение на NodeJS с применением фреймворка Express, а механизм аутентификации пользователя пускает тебя к данным, если ты верно указал заголовок «sessionId» значение которого представляет из себя какой-то самопальный токен генерирующийся на стороне сервера.
При этом, если нажать кнопку «Выйти» в приложении «Проверка чека», то как оказалось, инвалидации данного токена не происходит. Так же нет функционала просмотра всех своих сесссий и нет кнопки «Выйти на всех устройствах».
Таким образом даже если вы каким-то образом поняли что токен доступа был скомпрометирован, то нет никакой возможности его сбросить и тем самым гарантировать с этого момента отсутствие у предполагаемого злоумышленника доступа к вашим данным.
Крайне безответственно, но не фатально.
Sentry
В процессе просмотра «улова» на промежуточном прокси я обратил внимание, что в случае крэша приложения оно отправляет диагностические данные в Sentry располагающийся по адресу не связанному, ни с ФНС, ни с ФГУП ГНИИВЦ ФНС РФ, а на домен зарегистрированный на физическое лицо — sentry.studiotg.ru.
Studio TG
Sign in with your Gitlab account to continue.
Login with Gitlab,информационная небезопасность,дыра,уязвимость,новости,habrahabr,длинопост,информационная безопасность,it,мопед не мой,habr,Российская федерация,страны,копипаста
Страница входа в Sentry команды Studio TG
Рядом сразу же был обнаружен gitlab.studiotg.ru.
Страница входа в GitLab команды Studio TG
Дальнейшее исследование эндпойнта привело к ссылками на публичные репозитории в этом Гитлабе находящиеся в индексе Гугла уже более года.
Содержимое публичных репозиториевзаставило меня биться в истерике.
Публично доступный репозиторий ansible_conf/install_geo Содержимое архивов из репозитория ansible_conf/install_geo
Пояснение к скриншоту выше: папки содержащие подстроки «lkio», «lkip», «lkul» напрямую относятся к одноименным сервисам ФНС на домене nalog.ru.
Содержимое папки lkip-web-login, это — исходный код сервиса lkip2.nalog.ru
Для сверки, что обнаруженные исходники действительно относятся к сервисам ФНС, проведена простая проверка наличия на боевом веб-сервере файла uppod-styles.txt, который не мог там оказаться по случайному совпадению.
uppod-styles.txt на сайте lkip2.nalog.ru Содержимое файла .env судя по всему прямиком с боевых серверов В итоге
Фактический разработчик мобильного приложения «Проверка чека» некая studiotg.ru.
Вероятно есть нарушение соглашений об обработке персональных данных в силу передачи диагностических сведений со стороны ФГУП ГНИИВЦ ФНС РФ в адрес третьих лиц.
Данные ребята так же причастны к разработке сервисов lkip.nalog.ru, lkul.nalog.ru и lkio.nalog.ru.
По их вине исходный код данных сервисов находится в публичном доступе уже около года.
Исходя из общей картины, предположу, что данные о ваших покупках попадающие в ОФД путём информационного обмена фискальными данными с ФНС, на текущий момент, находятся под угрозой утечки.
,информационная небезопасность,дыра,уязвимость,новости,habrahabr,длинопост,информационная безопасность,it,мопед не мой,habr,Российская федерация,страны,копипаста
Как-то так.
Здесь мы собираем самые интересные картинки, арты, комиксы, мемасики по теме мопед не мой (+55 постов - мопед не мой)