Не читаемые символы в паролях

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

К примеру “i” в верхнем регистре “I” похожа на 1 (один) или l (L). Ноль “0” похож на “O”.

Тут встает вопрос, как быстро определить, где какой символ. Самое простое решение, это привести к нижнему или верхнему регистру.

Воспользуемся Powershell, который есть во всех Windows. (Win+R и в выполнить powershell)

Выполним следующий код: “3CI156O0tSs” | % {write-Host $_;write-host $_.toLower();write-host $_.toUpper()} и вот что получим:


3CI156O0tSs
3ci156o0tss
3CI156O0TSS

Сразу всё встаем на места.

Ошибка Windows 11 FIRST BOOT

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

  1. Наличии свободного места 30 Гб на системном диске
  2. Выполнить проверку диска. Запустить cmd от администратора и последовательно выполнить команды:
    sfc /scannow
    Dism /Online /Cleanup-Image /CheckHealth
    Dism /Online /Cleanup-Image /ScanHealth
    Dism /Online /Cleanup-Image /RestoreHealth
  3. Удалить драйвера NVidia

Выполнить перезагрузку ПК и повторить установку.

WhatsApp Electron

WhatsApp прекратил поддержку приложения на базе Electron. Новое приложение доступно только в MS Store, что создало трудности для некоторых пользователей корпоративных версий или старых Windows.

Аналогично СберЗвуку на базе Electron собран пакет. Используется код https://github.com/kenxjy/whatsapp-electron.

Приложение поддерживаем восстановление закрытого окна через трей, всплывающие сообщения.

WhatsApp Electron для Windows 7,8,9,10,11

P.S. Выразить благодарность можно через “Сказать СПАСИБО” в папке с приложением.

Яндекс: Год это 360 дней!

Захотел оформить подписку яндекс.плюс, оплатил. Смотрю, а срок оплаты раньше на 6 дней. Пишу в поддержу и получаю ответ:

Период подписки не всегда соответствует точному количеству календарных дней, поэтому списание за Плюс произойдёт чуть раньше ожидаемой даты. Мы обновили «Условия подписки на Яндекс Плюс» yandex.ru/legal/yandex_plus_conditions и подробно рассказали про периоды в разделе «Термины».

— Месяц — это 30 календарных дней.
— Три месяца — это 90 календарных дней.
— Год — это 360 дней.

Да, вот так мы меняем правила. 1+1 = 3.
Просто в падлу и выгодно, правда? *яндекс

Биржа трафика 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 x64.

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

12.08.23 – Заменен Electron для поддержки HiFi с Widevine CDM от castlabs. Просто удалите старую папку и распакуйте новую версию!!!

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

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

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

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

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

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

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

P.S. Выразить благодарность можно через “Сказать СПАСИБО” или через ярлык в папке с приложением

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