Биржа трафика wmrfast – автоматизация просмотров

Релиз скриптов для GreasureMonkey и TamperMonkey под Firefox.

Функционал: GreasureMonkey – автопосещение youtube,серфинг. TamperMonkey – youtube autoplay. Необходимо импортировать архивы из release

https://github.com/RusbNoit/WMRFast/

В Firefox необходимо разрешить закрытие вкладок через скрипты. В адресную строку ввести about:config и изменить dom.allow_scripts_to_close_windows -> true

P.S. хотя авторы проекта по своим правилам против автоматизации, что не совсем понятно, так как это только повышает создание качественного трафика.

Как сделать совместимое Android приложение с сертификатом от минцифры

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

К примеру для Android до 6.x вы можете поставить сертификаты вручную и проблема будет решена. В более новых Android политика более жесткая и если разработчик приложения оставил параметры безопасности по-умолчанию,то доверие будет только корневым сертификатам установленным в систему Android. Правила доверия описываются в res\xml\network_security_config.xml.

Если разработчик не создал данный конфиг или оставил только system, то все установленные пользовательские сертификаты будут игнорироваться.

<network-security-config>  
      <base-config>  
            <trust-anchors>  
                <!-- Trust preinstalled CAs -->  
                <certificates src="system" />  
                <!-- Additionally trust user added CAs -->  
                <certificates src="user" />  
           </trust-anchors>  
      </base-config>  
 </network-security-config>

Для решения данной проблемы необходимо пересобрать apk с добавлением user.

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

Сертификаты минцифры сохраняем в папку res\raw с именами rootca,subca и создаем следующий network_security_config.xml. Сертификат subca действует до 06.03.2027г.

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config>
        <trust-anchors>
            <certificates src="@raw/rootca" />
            <certificates src="@raw/subca" />
        </trust-anchors>
    </domain-config>
    <base-config>
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
</network-security-config>

Можно сделать ограничение применимости данных сертификатов к конкретному домену, в этом случае в domain-config нужно добавить еще:

<domain includeSubdomains="false">service.test.com</domain>

Теперь поговорим о том, как пересобрать APK.

Нам потребуется Apktool:

Apktool – How to Install (ibotpeaches.github.io)

Для получения исходного APK файла можно воспользоваться сервисом https://apkcombo.com/

Для распаковки: apktool d app.apk

Для сборки: apktool b app -o app_patched.apk

Следующий важный момент, это подписание приложения цифровой подписью. При чем с 10-ого Android был изменен метод для подписи на V2. Если раньше можно было воспользоваться jarsigner из jdk, то теперь необходимо использовать apksigner из состава Android SDK Build Tools 24.0.3 и выше из Android Studio (см ниже)

// создание ключа подписи через JDK
jdk\bin\keytool.exe -genkey -v -keystore key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias mysign

// v1 подпись приложения APK для android 7,8,9
jdk\bin\jarsigner -keystore key.jks app_patched.apk mysign

// v2 подпись приложения APK для android 10 и выше
build-tools\apksigner.bat sign --ks key.jks app_patched.apk

Где скачать CRT сертификаты от минцифры и списки отзыва CRL:

https://www.company.rt.ru/cdp/rootca_ssl_rsa2022.crt

https://www.company.rt.ru/cdp/subca_ssl_rsa2022.crt

http://company.rt.ru/cdp/rootca_ssl_rsa2022.crl

http://reestr-pki.ru/cdp/rootca_ssl_rsa2022.crl

https://www.company.rt.ru/cdp/subca_ssl_rsa2022.crl

Для Android приложения crt файлы нужно пересохранить в base64 формате.

Ссылки по теме:

apksigner  |  Android Developers

Make APK Accept CA Certificate – HackTricks

Android SDK Build Tools All Version

Android SDK Build Tools 24.0.3

СберЗвук – приложение для компьютеров с Windows

У СберЗвука есть только мобильное приложение для Android, а вот отдельного приложения для компьютера под Windows нет. Для этого приходится использовать различные браузеры. Использование через браузер крайне не удобно, так как у любого хорошего пользователя интернета должно быть обязательно открыто сто вкладок. В интернете вам предложат поставить какие-нибудь сомнительные эмуляторы для Android.

Но всё оказалось намного проще. Давно была идея попробовать сделать на базе приложения Electron, которое использует ядро Chrome.

За основу взят Electron v22.0.3

Скачать СберЗвук для компьютера с Windows 7,10,11 . Распакуйте архив SberZvuk.zip в любую папку. Запустите sberzvuk-shortcut.exe для создания ярлыка “СберЗвук” на рабочем столе. За 3 месяца скачано более 500 раз.

Готово! Теперь можно слушать СберЗвук онлайн на компьютере с Windows без использования браузера!

Сбер, так сложно было сделать?

Если необходим последний APK СберЗвук для Android, то его можно скачать тут https://apkcombo.com/ru/zvuk-hifi-music-podcasts

Слушать СберЗвук онлайн и бесплатно

Вы можете пользоваться приложением СберЗвук абсолютно бесплатно (ссылка выше). При бесплатном доступе у вас будет доступен данный функционал:

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

P.S. Профиль с данными находится в %appdata%\SberZvuk Electron

Docker – Error: no such image

По совершенно не понятной причине не удается удалить образ через docker rmi ни через ID, REPOSITORY:TAG или DIGESTS.

Нет никаких инструментов для проверки образа на корректность.

Если запустить dockerd в режиме отладки, то увидим только

level=debug msg=”Calling DELETE /v1.41/images/15dasdfdsfa”

В данной ситуации помогло только редактирование /var/lib/docker/image/overlay2/repositories.json и удаление блока c проблемным образом.

"docker.io/сompany/image":
{
	"docker.io/company/image:latest":"sha256:***",
	"docker.io/company/image@sha256:*****":"sha256:***"
},

После удаления стартуем docker и удаляем через ID. На эту мысль подтолкнул тот факт, что если сделать пустой docker и выполнить в него загрузку образа из архива, то в repositories.json ничего не добавляется:{“Repositories”:{}}

О похожем баге можно почитать на https://github.com/docker/for-linux/issues/477

WD MyCloud EX2 MiniDLNA

В WD MyCloud EX2 используется уже устаревший Twonky Server. Альтернава, это Plex Media Server, но он слишком навороченный для такого NAS. Самая простая альтернатива, это MiniDLNA, но для WD MyCloud нет готового пакета последнего MiniDLNA 1.3.0. Поэтому можно взять совместимый пакет от Sinology DS111\DS112\

WD My Cloud EX2 использует Marvell ARMADA 370 (MV6710) (Single Core ARMv7 @ 1.2 GHz), а в Sinology DS111\DS112 Marvell Kirkwood 88F6282 на ARMv5. Хотя у Sinology есть DS213j на Armada 370, но из данного пакета minidlna не работает.

Из скаченного spk нужно извлечь package.tgz, который распаковать к примеру в папку package

mkdir package
cd package
tar xvf ../minidlna-1.3.0-2.88f6281.spk 
tar zxvf ./package.tgz

https://synology.nimloth.pl/?arch=88f6282

Для запуска сделаем скрипт minidlna.sh и конфигурационный файл minidlna.conf рядом с папкой package

#!/bin/sh

export LD_LIBRARY_PATH=/mnt/HD/HD_b2/Public2/minidlna/package/lib

./package/sbin/minidlnad -f ./minidlna.conf -P /mnt/HD/HD_b2/Public2/minidlna/minidlna.pid
# port for HTTP (descriptions, SOAP, media transfer) traffic
port=8200

# network interface to bind to (this is the only interface that will serve files)
#network_interface=eth0

# set this to the directory you want scanned.
# * if have multiple directories, you can have multiple media_dir= lines
# * if you want to restrict a media_dir to a specific content type, you
#   can prepend the type, followed by a comma, to the directory:
#   + "A" for audio  (eg. media_dir=A,/home/jmaggard/Music)
#   + "V" for video  (eg. media_dir=V,/home/jmaggard/Videos)
#   + "P" for images (eg. media_dir=P,/home/jmaggard/Pictures)
media_dir=/mnt/HD/HD_b2/Media

# set this if you want to customize the name that shows up on your clients
friendly_name=MiniDLNA

# set this if you would like to specify the directory where you want MiniDLNA to store its database and album art cache
db_dir= /mnt/HD/HD_b2/Public2/minidlna/.minidlna

# Уровень детальности лога
# В формате log_level=источник1,источник2=значение1,источник3,источник4=значение2 ...
# Доступные источники: "general", "artwork", "database", "inotify", "scanner", "metadata", "http", "ssdp", "tivo"
# Возможные значения: "off", "fatal", "error", "warn", "info" or "debug"
#log_level=general=warn,artwork=debug,database=warn,inotify=off,scanner=debug,metadata=debug,info,ssdp,tivo=warn
log_level=debug
#log_level=general=warn,metadata=debug,artwork=debug

# this should be a list of file names to check for when searching for album art
# note: names should be delimited with a forward slash ("/")
album_art_names=Cover.jpg/cover.jpg/AlbumArtSmall.jpg/albumartsmall.jpg/AlbumArt.jpg/albumart.jpg/Album.jpg/album.jpg/Folder.jpg/folder.jpg/Thumb.jpg/thumb.jpg

# set this to no to disable inotify monitoring to automatically discover new files
# note: the default is yes
inotify=yes

# set this to yes to enable support for streaming .jpg and .mp3 files to a TiVo supporting HMO
enable_tivo=no

# set this to strictly adhere to DLNA standards.
# * This will allow server-side downscaling of very large JPEG images,
#   which may hurt JPEG serving performance on (at least) Sony DLNA products.
strict_dlna=no

# default presentation url is http address on port 80
#presentation_url=http://www.mylan/index.php

# notify interval in seconds. default is 895 seconds.
notify_interval=900

# serial and model number the daemon will report to clients
# in its XML description
serial=12345678
model_number=1

Windows 11 Insider Preview проблема с TPM\Secure Boot

Для установки новой версии необходимое условия для вашего ПК:

  1. Включенная опция Secure Boot в UEFI BIOS
  2. Наличие модуля TPM 2.0.

Для проверки Secure Boot необходимо выполнить msinfo32 через “Выполнить” ( Win+R ).

Если не включен в BIOS, или не поддерживается, то будет отображено:

Проблема возможно из-за размеченного в режиме MBR диска и необходимости его преобразования в GPT. Из-за этого не возможно включить режим UEFI в BIOS.

Для преобразования MBR в GPT необходимо выполнить

mbr2gpt /validate /disk:0 /allowfullos

mbr2gpt /convert /disk:0 /allowfullos

Для возможности просмотра логов с ошибками. Необходимо предавирительно создать каталог mbr2gtp

mbr2gpt /validate /disk:0 /allowfullos /log:c\mbr2gpt

Для просмотра состояния дисков необходимо запустить PowerShell от имени админстратора и выполнить Get-Partiotion. Должно быть не более 3х IFS дисков.

В моем случае было 2 Recovery Partiton

В моем случае было 2 Recovery раздела. Удаляем все. Выполняем для восстановления загрузки.

bcdboot c:\Windows /f bios /s c:
Делаем диск C: активным через управление дисками

Выполняем конвертацию диска. На этот раз удачно. Появляется 100 Мб EFI диск

PartitionNumber DriveLetter Offset Size Type
————— ———– —— —- —-
1 C 8225280 222.05 GB Basic
3 238428356608 100 MB System
2 238533214208 556 MB Recovery

В BIOS включаем только UEFI загрузку. В msinfo32 отображается правильный статус.

Проблема с TPM 2.0 в том, что в Россию ПК с ним не поставляются, так как необходимо разрешение ФСБ как на криптографическое устройство. Для проверки его наличия можно нажать “выполнить” (Win +R) и запустить tpm.msc

Для решения проблемы с модулем можно попробовать сделать изменение в реестре, если же не поможет, то необходимо заменить файл AppraiserRes.dll из Windows 10.

Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SYSTEM\Setup\LabConfig]
"BypassSecureBootCheck"=dword:00000001
"BypassTPMCheck"=dword:00000001 

Так как обновление пришло по программе Inseder Preview, то для замены необходимо скопировать файл AppraiserRes.dll из Windows 10 в c:\$WINDOWS.~BT\Sources\

После замены файла и изменения реестра установка успешно продолжается:

Файл реестра и https://disk.yandex.ru/d/BUZVkfNzQDj2IQ

YARG – бесплатное решение для генерации DOCX, XLSX, PDF

В этой статье будет рассмотрен процесс сборки standalone решения YARG для возможности генерации\обработки документов из шаблонов из командной строки.

Нам потребуется JDK. Удалось собрать на JDK 13.0.2. На более новых версиях 16,17 и 11-ой были ошибки сборки. Во время сборки Yarg 2.2.9 автоматически загружается Gradle 6.1.1

Загружаем Yarg 2.2.9, в нашем случае это Release 2.2.9 · cuba-platform/yarg · GitHub

Распаковываем в c:\apps. Запускаем CMD и переходим в c:\apps\yarg-2.2.9\core\

Устанавливаем переменную с JDK 13.0.2 через команду

set JAVA_HOME=”c:\Program Files\Java\jdk-13.0.2″

или можно воспользоваться Liberica JDK x64 от Bellsoft в виде ZIP архива. https://libericajdk.ru/pages/downloads/?version=java-13&release=13.0.2+9&os=Windows

Распакуем Liberica JDK в c:\apps и установим переменную:

set JAVA_HOME=”c:\apps\jdk-13.0.2″

Запускаем сборку gradlew.bat distZip

Будут собраны “бинарные” файлы yarg-console-2.2-SNAPSHOT.zip и yarg-server-SNAPSHOT.zip по следующим путям:

В yarg-console.cmd будет очень длинная строка для переменной CLASSPATH из-за чего будет возникать ошибка:

The input line is too long.
The syntax of the command is incorrect.

Для решения проблемы необходимо удалить строчку для set CLASSPATH и прописать

set CLASSPATH=%APP_HOME%\lib\*

Для поиска ошибок запуска в yarg-console можно установить переменную: set DEBUG=1

Теперь мы готовы к созданию документов на основе шаблонов.

Полезные ссылки:

YARG — open-source библиотека для генерации отчётов / Блог компании Haulmont / Хабр (habr.com)

https://github.com/cuba-platform/yarg/wiki/Standalone-usage

https://github.com/cuba-platform/yarg/releases/latest

https://libericajdk.ru/pages/downloads/

Ошибка отправки отчета в ЦБР VALIDATA_3765436454

При попытке отправки шифрованного отчета через портал ЦБР portal5.cbr.ru появилась ошибка:

Ошибка при расшифровании файла: [ncacn_ip_tcp: Decrypt file error e0700026: Recipient certificate of the encrypted message was not found. Error VALIDATA_3765436454
(Произведена попытка расшифровать сообщение в РКС#7 формате на сертификате, идентификатор которого отсутствует в списке идентификаторов сертификатов получателей)

По ошибке можно понять, что проблема в сертификате получателя, поэтому проверяем в КриптоАРМ сроки сертификатов. Не смотря, что текущий сертификат действует до 17.01.2020, но его уже не принимают.

Новый актуальный сертификат ключа проверки электронной подписи Банка России (Внешний портал Банка России) можно скачать с портала http://cbr.ru/lk_uio/requisites_certificates/ . Там же инструкция, как его загрузить в КриптоАРМ в раздел “Сертификаты других пользователей”. Старый сертификат обязательно удаляем.

Уязвимость Citrix NetScaler ADC CVE-2019-19781

В декабре появилась информация о найденной уязвимость в Citrix Netscaler, которая позволяет без авторизации выполнять произвольный код на балансировщике.

При этом нигде не упоминается, что уязвимости подвержены IP адреса NS, где включено управление для этого адреса. При правильной топологии приложения такие адреса всегда находятся в защищенных подсетях с контролем доступа и данной уязвимости основные сервисы не подвержены.

Можно только удивляться не торопливости Citrix в выпуске исправленний для закрытия критической проблемы CVE-2019-19781. Информация о дате выпуске обновлений была размещена только после появления первых эксплойтов 10 января 2020.

Для проверки наличия проблемы необходимо открыть по https или http адрес https://server/vpn/../vpns/cfg/smb.conf

В мире подвержено более 25000 устройства. На графической карте от badpackets.net можно посмотреть статистику по странам https://docs.google.com/spreadsheets/d/1sJ8-cVyG4vFYq6-MGdapM1eAhUkoXIKlsmuzKdfD9Ys/edit?usp=sharing

Анонс дат выпуска обновлений https://www.citrix.com/blogs/2020/01/11/citrix-provides-update-on-citrix-adc-citrix-gateway-vulnerability/

Временное решение по устранению уязвимости