@echo off title %~nx0 REM ******************************************************************** REM * Autorun.inf をチェック REM http://www10.plala.or.jp/palm84/archives/commandline/backup/Check_Autorun.inf.bat.txt REM https://eu7w9wsmf6a74xyjdfzl3q-on.drv.tw/archives/commandline/backup/Check_Autorun.inf.bat.txt REM ******************************************************************** REM 更新 2023.06.22 ログファイル名の日付時刻を修正 REM ## log REM set now=%date%_%time% REM set now=%now: =0% REM set now=%now:~-20,2%%now:~-17,2%%now:~-14,5%%now:~-8,2%%now:~-5,2% set now=%date:/=%_%time: =0% set now=%now: =% set now=%now:.=% set now=%now::=% set log=%cd%\Check_Autorun.inf_%now%.txt REM ## Temp directory set temp_dir=%temp%\%random% mkdir %temp_dir% set autorun_check=%temp_dir%\autorun.txt set autorun_check2=%temp_dir%\autorun2.txt >>"%log%" echo ========================================================= >>"%log%" echo *** Autorun.inf の 存在チェック *** >>"%log%" echo 調査日時 : %date% %time% >>"%log%" echo ========================================================= for %%x in (C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z) do ( dir /a/b %%x:\ >nul 2>nul && if exist %%x:\autorun.inf echo %%x:>>"%autorun_check%" ) if not exist "%autorun_check%" GOTO NO_AUTO if "%osver%"=="2k" GOTO WIN2K REM ##################################### REM ### REG.EXE で CD-ROMじゃないの? のチェック REM ##################################### :REGEXE for /f "usebackq" %%x in ("%autorun_check%") do reg query HKLM\SYSTEM\MountedDevices | findstr 4300640052006F006D00 | findstr DosDevices\%%x >nul || echo %%x\autorun.inf>>"%autorun_check2%" if not exist "%autorun_check2%" GOTO NO_AUTO for /f "usebackq delims=" %%x in ("%autorun_check2%") do ( attrib -s -h -r "%%x" >>"%log%" echo %%x が存在します! >>"%log%" echo --------------- >>"%log%" echo * 内容 >>"%log%" echo --------------- >>"%log%" type %%x >>"%log%" echo: >>"%log%" echo --------------- ren "%%x" autorun%random%.bak copy nul "%%x" >nul attrib +r "%%x" ) >>"%log%" echo: >>"%log%" echo (CD/DVD 以外に) autorun.inf があったので、 >>"%log%" echo 念の為に!、autorun[乱数].bak にリネームし、 >>"%log%" echo 空の読み取り専用 autorun.inf を作成しました。 >>"%log%" echo 自分で作成したものでないなら、 >>"%log%" echo ウイルスに感染している可能性があります。 >>"%log%" echo: GOTO SHOW_LOG REM ##################################### REM ### Win 2k では REG.EXE がないという罠 REM ##################################### :WIN2K if exist "%ProgramFiles%\Support Tools\reg.exe" GOTO REGEXE for /f "usebackq" %%x in ("%autorun_check%") do ( >>"%log%" echo %%x\autorun.inf が存在します! >>"%log%" echo --------------- >>"%log%" echo * 内容 >>"%log%" echo --------------- >>"%log%" type %%x\autorun.inf >>"%log%" echo: >>"%log%" echo --------------- ) >>"%log%" echo: >>"%log%" echo autorun.inf がありました。 >>"%log%" echo 正常なCD/DVDなら多分問題なし。 >>"%log%" echo CD/DVDでなく、自分で作成したものでもないなら >>"%log%" echo ウイルスに感染しているかもしれません。 >>"%log%" echo: GOTO SHOW_LOG REM ##################################### REM ### not exist autorun.inf REM ##################################### :NO_AUTO REM >>"%log%" echo autorun.inf はありません。 REM >>"%log%" echo: cls echo: echo: echo ============================================================ echo: echo * Autorun.inf はありません。 echo: echo *** 何かキーを押すと閉じます *** echo: echo ============================================================ echo: pause >nul del "%log%" rd /s /q "%temp_dir%" GOTO :EOF REM ##################################### REM ### UAC REM ##################################### :UAC echo: echo: echo: echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! echo: echo !「管理者として実行」してくださいマセ ! echo: echo *** 何かキーを押すと閉じます *** echo: echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! echo: pause >nul GOTO :EOF REM ##################################### REM ### SHOW_LOG REM ##################################### :SHOW_LOG cls echo: echo: echo: echo ============================================================ echo: echo * Autorun.inf が存在します!! echo: echo ============================================================ echo: echo: echo * Enter で ログを表示します。 echo: echo: pause >nul start "" "%log%" rd /s /q "%temp_dir%"