EasyCureLogs! - автоматический сборщик логов для лечения на Dr.Web forum

EasyCureLogs! - утилита для сбора логов и лечения с помощью Dr.Web CureIt!® 1.0.1.6

Нет прав для скачивания

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,630
Реакции
6,087
Phoenix, еще мне не понравилось, что при необходимости повторного сканирования, CureIt скачивается заново.

if exist .\cureit.exe ren cureit.exe cureit_%random%.exe
if exist .\scanner.exe ren scanner.exe scanner_%random%.exe

а зачем это? Я думал раньше - некий способ обхода блокироваки по имени.

wget.exe -cN -t5 -T15
ключик -с я бы прибрал. Кстати, что обозначает у тебя N ?При установке новой версии старая не удаляется. Не возникнет когда-нибудь конфликта?ECL.cmd
Я бы выбрал что-то более информативное:
EasyCureLogs!.cmd например ;)
 
Последнее редактирование:

Phoenix

Аксакал
Сообщения
2,108
Реакции
1,845
wget help
Код:
  -c,  --continue                resume getting a partially-downloaded file.
  -N,  --timestamping            don't re-retrieve files unless newer than
                                 local.
Я это содрал у назарета :)
еще мне не понравилось, что при необходимости повторного сканирования, CureIt скачивается заново.
if exist .\cureit.exe ren cureit.exe cureit_%random%.exe
if exist .\scanner.exe ren scanner.exe scanner_%random%.exe
Это на случай старых версий - в Меню же можно выбрать №2
Код:
----------------------------------
-                                -
-    1. Загрузить CureIt         -
-    2. Сканировать с CureIt     -
-    3. Сканер DrWeb AV          -
-    4. Собрать отчёты           -
-    5. Утилита DWSYSINFO        -
-    6. Утилита plstfix          -
-    7. Утилита mwz_unhooker     -
-    0. Выход                    -
-                                -
----------------------------------

ECL.cmd
Я бы выбрал что-то более информативное:
EasyCureLogs!.cmd например
Ну да для 7zsfx надо наверное.
 
Последнее редактирование:

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,630
Реакции
6,087
Я это содрал у назарета
Неверно содрал или у Назарета криво. Я тестил еще на ViruLogs-e. Ключ -c конфликтовал с ключем -N.
И сам ключ N писал в полном варианте. А иначе что-то там тоже была проблема.
Меняй на:
Код:
wget.exe --timestamping -t5 -T15
++
-t - кол-во попыток подключения
-T - кол-во секунд между попытками.
Не много ли? Но я вообщем - без претензий.
Это на случай старых версий - в Меню же можно выбрать №2
Тогда не будет смысла использовать ключ --timestamping
Проверять нечего. Его алгоритм: сверять локальную и серверную версии файлов. Если отличаются - закачать.
Надо бы удалить эти обе строчки (лучше - привести их к одному имени, такому же, как и скачиваемый WGET-ом файл).
Проверил только что, нормально сверяется. Повторно не загружает.
 

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,630
Реакции
6,087
Зачистка старых бекапов, пока общий объем не достигнет 400 МБ.
CMD/BATCH:
@Echo Off
SetLocal EnableExtensions
call :Backup_Cleaner "c:\Program Files (x86)\EasyCureLogs!\REGBACKUP" 400
exit /B

:Backup_Cleaner [Папка с бекапами] [Лимит в МБ]
call :GetDirSize "%~1" Size
if %Size% LSS %~2 Exit /B
for /F "delims=" %%d in ('dir "%~1" /B /AD /O-D') do set "EarlyFolder=%~1\%%d"
echo Удаление старого бекапа реестра - "%EarlyFolder%"
rd /s /q "%EarlyFolder%"
goto Backup_Cleaner

:GetDirSize [Папка] [Переменная для хранения результата в МБ]
SetLocal
For /F "tokens=1-3" %%a IN ('Dir "%~1" /-C/S/A') Do call Set DirSize=%%n2%%& Set n2=%%c
Set "DirSize=%DirSize:~0,-3%"
if "%DirSize%"=="" (set DirSize=0) else (Set /A DirSize=%DirSize%/1024)
EndLocal& Set "%~2=%DirSize%"
Exit /B
У него во многих файлах -сN
Проверил. Так тоже работает. Но я сторонник указания корректного синтаксиса. Справка не просто так пишется.
 
Последнее редактирование:

Phoenix

Аксакал
Сообщения
2,108
Реакции
1,845
документация на русском языке
Код:
-N
--timestamping
Включить сравнение по дате.
Это же алиасы..
Код:
Помните, что при обрыве связи Wget повторяет попытки дозагрузки самостоятельно и без параметра -c, и только когда он "сдастся" и завершит свою работу, то для возобновления загрузки файла будет нужен этот параметр.
Код:
При запуске Wget с параметром -N, с или без -r, файл будет загружен только если он новее уже существующего, или если размер его не совпадает с имеющейся копией (см. Сравнение по дате). -nc не комбинируется с -N.
Dragokas,
Код:
if exist .\cureit.exe ren cureit.exe cureit_%random%.exe
if exist .\scanner.exe ren scanner.exe scanner_%random%.exe
Если это убрать и оставить имя cureit.exe, то при повторном скачивании, если есть свежий файл, то закачиваться повторно не будет. Наверное об этом ты и хотел сказать.
 
Последнее редактирование:

Phoenix

Аксакал
Сообщения
2,108
Реакции
1,845
Изначально задумка была для не стандартного имени, не даром же через сайт качается с рандомным именем. Не хочется привязываться к одному имени. scanner.exe в скрипте можно заменить другим, но если привязать к cureit.exe, то изменить будет нельзя... Так что оставим так наверное.
 

Phoenix

Аксакал
Сообщения
2,108
Реакции
1,845
Хочешь запускать сканер с рандомным именем?
Было бы идеально. При каждом запуске генерируется новое имя. Но переменная его не забудет, не потеряет, не перегенерируется по переходам скрипта ? Как хранить рандомное имя не знаю.
 
Последнее редактирование:

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,630
Реакции
6,087
Легко. Есть 2 варианта:
1) переименовать файл в Cure%random%.exe
Код:
set scanner=Cure%random%.exe
ren CureIT.exe %scanner%
Перед тем, как скачивать WGET-ом проводим обратную операцию - перечисляем все файлы по маске Cure*.exe и получаем имя в переменную:
Код:
For /F %%a in ('dir /B Cure*.exe') do set scanner=%%a
:: если имя найдено - if Defined - то переименовуем назад
if Defined scanner ren %scanner% CureIT.exe

2) способ 2 - хранить имя сканера во временном файле:
первый код такой же + дописываем такое:
Код:
echo %scanner%> "scanner_name.txt"
Обратная операция перед командой WGET:
Код:
:: проверяем, есть ли такой файл scanner_name.txt, и читаем из него имя сканера
if exist "scanner_name.txt" set /p scanner=<"scanner_name.txt"
if Defined scanner ren %scanner% CureIT.exe
 

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,630
Реакции
6,087
Phoenix, пора "собирать все до кучи".
Дашь последнюю версию. Нужно провести полную ревизию кода на предмет стабильности и удаления лишних компонентов:
1) максимально отказаться от внешних утилит командной строки (типа find.exe, если там есть);
2) полностью отказаться от VBSciprt. Повышение привилегий можно попробовать организовать таким образом:
- при запуске из-под установщика оно и не понадобится;
- при ручном запуске по ярлыку можно сделать удобный для тебя вариант один из двух:
2.1.) найти в установщике опцию, чтобы создавал ярлык на батник сразу с опцией "Затребовать права Администратора" (свойства ярлыка -> ярлык -> Дополнительно)
2.2.) повесить ярлык на ярлык - т.е. в поле объект ярлыка на рабочем столе у тебя будет: c:\program files\easycurelogs\start.LNK, где START.lnk - будет предустановленный, с уже указанной из п.2.1. галочкой и иметь относительную ссылку на текущий каталог (или абосолютную? через %ProgramFiles(x86)%)\ECL.cmd.
3) Вынести сомнительные структуры (например, мой последний код очистки папки бекапов - с парсингом текста и математикой - это потенциально опасный) - в отдельный батник, который асинхронно вызывать из тела основного кода без ожидания его завершения.
 
Последнее редактирование:

Кирилл

Команда форума
Администратор
Ассоциация VN
Сообщения
14,248
Реакции
6,274
upload_2014-2-4_19-24-16.png
и это при выключенном антивирусе)
надо как то с вирлабами разобраться,а то недоразумения могут быть....
 
Последнее редактирование:

Phoenix

Аксакал
Сообщения
2,108
Реакции
1,845
и это при выключенном антивирусе)
надо как то с вирлабами разобраться,а то недоразумения могут быть....
А зачем перезагрузка ему требуется ? Сделай экспорт отчёта плиз.
А с AVZ проблем нет ? VT
deepscan.png
Проверю..
 
Последнее редактирование:

Кирилл

Команда форума
Администратор
Ассоциация VN
Сообщения
14,248
Реакции
6,274
Перезагрузка потому что доступ не может получить - в процессе спохватился сонар.
 

Вложения

  • ррррр.txt
    680 байт · Просмотры: 5

Phoenix

Аксакал
Сообщения
2,108
Реакции
1,845
c:\users\fire\appdata\local\temp\rar$ex43.968\easycurelogs.exe - прямо из архива запускал !? Жульничаешь.. :D
http://www.symantec.com/security_response/writeup.jsp?docid=2013-110421-3504-99
Код:
Threat Assessment
Wild
Wild Level: Low
Number of Infections: 0 - 49
Number of Sites: 0 - 2
Geographical Distribution: Low
Threat Containment: Easy
Removal: Easy
ecl.png
ecl-i.png
Sonar.png
Разрешить ! :)
sonar_.png
Sonar должен был отключиться, как видно он сейчас запускается..Файлы заслал
This message is an automatically generated reply -- do not reply to this message.This system is designed to analyze and process suspicious file submissions into Symantec Security Response and cannot accept correspondence or inquiries.

Submission Date2014-02-04T17:14:58.923
***************************************
Категория: Norton Community Watch
Дата и время,Риск,Операции,Статус,Рекоменд. действие,Дата обновления,Отправлено,Описание,Сведения об отправке
04.02.2014 21:38:21,Информация,Отправка статистики: EasyCureLogs.exe реабилитировано,Ожидание,Действия не требуются,04.02.2014 21:38:21,Norton Internet Security,Отправка статистики: EasyCureLogs.exe реабилитировано,"CSIDL_DRIVE_REMOVABLE\easycurelogs.exe <br>Detection Digest: <br>03 00 EA AF 0F 01 00 02 00 FA 5D 15 00 F9 08 FA ..........]..... <br>46 AC 41 83 E5 00 00 00 00 FD 40 11 48 04 03 00 [email protected] <br>00 C8 19 03 06 00 01 02 03 00 00 00 ............ <br>"

*Latest version EasyCureLogs
 
Последнее редактирование:
Сверху Снизу