трудовые будни

Позднее Ctrl + ↑

поиск пользователей с заданным паролем в домене

Представьте ситуацию: новые пользователи заводятся в домен автоматически с заранее известным паролем, например password. Т. е. политика сложности пароля позволяет использовать простые пароли, хоть 111111. Смена пароля лежит на совести пользователя, а значит — не меняется. С помощью данного vbs-скрипта можно проверить какие пользователи используют словарные пароли

Dim adoCommand, adoConnection, strBase, strFilter, strAttributes 
Dim objRootDSE, strDNSDomain, strQuery, adoRecordset 
Dim strUser, strPassword, objDomain, objNS 
Dim iplus, iall 
Dim fso, f1 
Dim WshShell, Path 

Const ADS_SECURE_AUTHENTICATION = &H1 
Const ADS_USE_ENCRYPTION = &H2 

Set fso = CreateObject("Scripting.FileSystemObject") 
Set f1 = fso.CreateTextFile("c:\testfile.txt", True) 
iplus = 1 
iall = 1 
Set objNS = GetObject("LDAP:") 
strPassword = InputBox("Введите пароль для проверки") 
Set adoCommand = CreateObject("ADODB.Command") 
Set adoConnection = CreateObject("ADODB.Connection") 
adoConnection.Provider = "ADsDSOObject" 
adoConnection.Open "Active Directory Provider" 
adoCommand.ActiveConnection = adoConnection 

Set objRootDSE = GetObject("LDAP://RootDSE") 
strDNSDomain = objRootDSE.Get("defaultNamingContext") 
strBase = "<LDAP://" & strDNSDomain & ">" 

strFilter = "(&(objectCategory=person)(objectClass=user))" 
strAttributes = "sAMAccountName" 
strQuery = strBase & ";" & strFilter & ";" & strAttributes & ";subtree" 
adoCommand.CommandText = strQuery 
adoCommand.Properties("Page Size") = 100 
adoCommand.Properties("Timeout") = 30 
adoCommand.Properties("Cache Results") = False 

Set adoRecordset = adoCommand.Execute 
Do Until adoRecordset.EOF 
    strUser = adoRecordset.Fields("sAMAccountName").Value 
    On Error Resume Next 
    Set objDomain = objNS.OpenDSObject("LDAP://" & strDNSDomain, _ 
        strUser, strPassword, ADS_SECURE_AUTHENTICATION) 
    If (Err.Number = 0) Then 
        On Error GoTo 0 
   f1.WriteLine(iplus & " User : " & strUser & vbTab & vbTab & " Пароль : '" & strPassword & "'") 
   iplus = iplus + 1 
    End If 
    On Error GoTo 0 
    adoRecordset.MoveNext 
   iall = iall + 1 
Loop 

f1.WriteLine("Всего проверено " & iall & " пользователей") 
f1.Close 
adoRecordset.Close 
adoConnection.Close 

Set WshShell = WScript.CreateObject("WScript.Shell") 
On Error Resume Next 
Path = "notepad c:\testfile.txt" 
WshShell.Run Path

lifehack для windows или как создать пользователя не заходя в систему

» — Деда, а ты сколько в войну сбил самолетов?

  • Три, внучек. Хотя как «сбил» — недозаправил»

Приходит как-то раз ко мне ноутбук Sony Vaio из новых. Жалуется на жизнь и хочет все начать с чистого листа, т. е. восстановиться из скрытого раздела. Казалось бы что может быть проще. Волшебная кнопочка Assist и понеслась. Но через некоторое непродолжительное время пациент выплюнул ошибку «не удалось завершить процесс установки» и кнопочку ok. По нажатию «ок» уходит в ребут.

Казалось бы что может быть проще — еще раз нажмем «Assist» и повторим операцию, ан нет — не работает кнопочка... Снимаем процесс — audit.exe, оказывается windows установщик считает что установился не полностью и проверить себя не может, хотя система полностью рабочая. После завершения вышеозначенного процесса успешно запускается оболочка, но после перезагрузки картина повторяется.

Гуглим. Объясняем через реестр, что система таки установлена до конца, проверять ничего не надо и давай уже работать. Ок, говорит система, вот у меня два пользователя: Administrator и Гость; первый отключен, а второй бесправен. Не беда, вспомним старый лайвхак:

Берем установочный диск с windows 7. После отрисовки графического инсталлятора жмем Shift+F10 попадаем в шелл:

D:\
copy D:\Windows\system32\sethc.exe D:\Windows\system32\sethc.exe.old
copy D:\Windows\system32\cmd.exe D:\Windows\system32\sethc.exe

отменяем установку и ребутим машинку. И вот перед нами знакомое приглашение windows 7, но теперь у нас есть бэкдорчик) Жмем shift 5 раз и, О чудо!, открывается шелл. Дальше дело техники:

net user Administrator /active:yes
net user User Password /add
net localgroup //Получим список групп и найдем как называется группа админов Administrators или Администраторы
net localgroup "Название_группы_админов" User /add
shutdown -r -t 0 -f

После перезагрузки логинимся либо под вновь созданной учеткой User либо под админом и видим, что винда все-таки встала коряво....

Мораль: гуглим, Alt+f10 при загрузке — recovery mode для Sony Vaio. Повторяем процесс восстановления. На этот раз все гладко. Теперь ясно где был «поворот не туда»

сжатие pdf

Оптимизировать PDF можно легко и просто:

sudo apt-get install ghostscript
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output1.pdf input.pdf

По времени файл размером 56Мб сжат до 11Мб:

real 20m56.141s
user 20m52.912s
sys 0m1.868s

степень сжатия определяется ключом -dPDFSETTINGS

-dPDFSETTINGS=/screen (screen-view-only quality, 72 dpi images)
-dPDFSETTINGS=/ebook (low quality, 150 dpi images)
-dPDFSETTINGS=/printer (high quality, 300 dpi images)
-dPDFSETTINGS=/prepress (high quality, color preserving, 300 dpi images)
-dPDFSETTINGS=/default (almost identical to /screen)

качаем ролики с сайта Россия К

Потребовалось нам скачать передачу АГОРА с сайта и пересмотреть ее в режиме offline.

открываем ссылку

https://tvkultura.ru/video/show/brand_id/61882/episode_id/2169406/video_id/2182968/

переходим в режим отладки Ctrl+Shift+C, выбираем закладку «Сеть» (Network)

очищаем список загруженных документов, жмем в плеере play и у нас начинают появляться подгруженные файлы, в списке находим ролики с расширением ts. Да вся передача разбита на множество небольших фрагментов, по 10-15 секунд, нам надо их всех выкачать.
на найденном файле жмем правой клавишей и выбираем Копировать->Копировать URL (Copy->Copy link address)

у нас в буфере обмена оказывается ссылка примерно такого вида:

https://a3569458507-s81121.cdn.ngenix.net/_cdn_auth/secure/v/vh/vod_hls/definst/smil:vh/smil/002/182/968_d20190519103336.smil/media_b1800000_pd3628000_1.ts

находим последний фрагмент, перематываем ролик до конца и подгружается файл с адресом:

https://a3569458507-s81121.cdn.ngenix.net/_cdn_auth/secure/v/vh/vod_hls/definst/smil:vh/smil/002/182/968_d20190519103336.smil/media_b800000_pd3628000_374.ts

нам нужны значения от 1 до 374, а далее дело техники, я уже подготовил bash скрипт

#!/bin/bash

# задаем диапазон фрагментов, от 1 до 374
for counter in {1..374}
do
   # дополняем нулями до трехзначного числа (чтобы при склейке в один файл фрагменты не перемешались)
   foo=$(printf "%03d" $counter)
   # скачиваем ролики по одному и сохраняем с дружественными именами
   wget -O "video_$foo.ts" "https://a3569458507-s81121.cdn.ngenix.net/_cdn_auth/secure/v/vh/vod_hls/definst/smil:vh/smil/002/182/968_d20190519103336.smil/media_b800000_pd3628000_$counter.ts"
done

# дальше с помощью ffmpeg склеиваем в один файл и сохраняем в формате mp4
ffmpeg -f concat -safe 0 -i <(for f in ./*.ts; do echo "file '$PWD/$f'"; done) -c copy output.mp4

# удаляем лишние файлы
find . -name "*.ts" -type f -delete

в результате работы скрипта получается файл output.mp4, в котором находится вся передача

 Нет комментариев    52   8 мес   bash   ffmpeg   linux

LSS Chronolux Sketchup 2017 и выше

Плагин для SketchUp для расчёта инсоляции LSS Chronolux ( https://extensions.sketchup.com/ru/content/lss-chronolux ) не обновлялся с 6июня 6 2013.
Тем временем Trimble Navigation выпускает по версии SketchUp каждый год. И если SketchUp 2015 ещё был совместим с LSS Chronolux, то на 2017 версии данный плагин работать оказывается, если у вас до этого на данном компьютере под нужным пользователем не был установлен SketchUp 2015.
Решение проблемы кроется в одном ключе в реестре:

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION]
"sketchup.exe"=dword:0000270f

PS создайте текстовый фал с данным содержанием, сохраните как «chronolux.reg» и двойным кликом внесите изменения в реестр.

Ранее Ctrl + ↓