Computer >> Hướng Dẫn Máy Tính >  >> Kết Nối Mạng >> An Ninh Mạng

File .bat (Batch file) xuất hiện trên Desktop: Là gì? Có nguy hiểm không? Cách xử lý

File .bat / .cmd (Batch File) là gì?

**Batch file** (phần mở rộng .bat hoặc .cmd) là **file văn bản chứa chuỗi lệnh dòng lệnh (command-line)** của Windows (CMD / cmd.exe). Khi double-click, Windows sẽ thực thi lần lượt các lệnh bên trong. Dùng để: tự động hóa tác vụ lặp lại, cài đặt phần mềm, sửa cấu hình, backup, dọn dẹp, troubleshooting...

Tại sao file .bat xuất hiện trên Desktop?

Cách kiểm tra file .bat có an toàn không?

  1. KHÔNG double-click ngay!
  2. Chuột phải file → Chỉnh sửa (Edit) → Mở bằng **Notepad** (hoặc Notepad++, VS Code)
  3. Đọc toàn bộ nội dung lệnh. Tìm các lệnh **nguy hiểm**:
    • del /f /s /q (xóa file hệ thống)
    • format, diskpart (xóa ổ cứng)
    • net user /add, net localgroup administrators (tạo user admin ẩn)
    • reg add / reg delete (sửa registry – disable defender, firewall, UAC, RDP...)
    • powershell -enc, powershell -command (chạy script PowerShell encoded – thường che giấu mã độc)
    • certutil -decode / -urlcache -split -f (tải file từ net)
    • bitsadmin /transfer, curl, wget, Invoke-WebRequest (tải file)
    • schtasks /create (tạo task lịch – persistence)
    • sc create (tạo service – persistence)
    • bcdedit (sửa boot config – bootkit)
    • vssadmin delete shadows (xóa shadow copy – ransomware behavior)
  4. Nếu **không hiểu lệnh nào** → **KHÔNG CHẠY**. Upload lên VirusTotal.com hoặc Hybrid Analysis để quét.
  5. Kiểm tra **chữ ký số (Digital Signature)**: Chuột phải → Properties → Digital Signatures. Có chữ ký Microsoft / Vendor uy tín = an toàn hơn.
  6. Kiểm tra **nguồn gốc**: Tải từ đâu? Email đính kèm? Web lạ? USB lạ?

Cách tắt cảnh báo "These files might be harmful to your computer" khi chạy .bat từ network drive

Windows chặn chạy script từ network share (UNC path) hoặc Intranet zone không tin cậy.

  1. Mở Internet Options (inetcpl.cpl) → Tab Security
  2. Chọn Local Intranet → Sites → Advanced
  3. Thêm IP/hostname của file server (VD: file://192.168.1.100, file://server-name) → Add
  4. OK → Close → OK
  5. Hoặc: Tùy chỉnh Level (Custom Level) → Launching applications and unsafe files → Enable (not secure) – KHÔNG KHUYẾN NGHỊ (giảm bảo mật)

Cách an toàn hơn: Copy file .bat về máy local (Desktop, Documents) → chạy từ local.

Các biến %%, %~dp0, %* trong file .bat

  • %%A: Biến vòng lặp FOR (trong file .bat phải dùng %%, CMD trực tiếp dùng %A)
  • %~dp0: Thư mục chứa file batch đang chạy (Drive + Path) – rất hữu ích để tham chiếu file cùng thư mục
  • %1, %2... %9: Tham số dòng lệnh truyền vào
  • %*: Tất cả tham số
  • %ERRORLEVEL%: Mã thoát của lệnh trước

Chạy file .bat ẩn (Hidden / Silent mode)

  • Tạo file run_hidden.vbs:
    CreateObject("Wscript.Shell").Run "cmd /c ""C:\Path\To\Your\Script.bat""", 0, False
    
    Chạy file .vbs này (double-click hoặc Scheduled Task) → .bat chạy ngầm không hiện cửa sổ đen.
  • Hoặc dùng tool: Bat To Exe Converter (compile .bat → .exe, có option "Ghost application" / "Hidden")

Batch file hữu ích cho Admin / Security (Ví dụ an toàn)


@echo off
rem === System Health Check Batch Script ===
rem Run as Administrator for full info

echo ==============================
echo SYSTEM HEALTH CHECK - %date% %time%
echo ==============================

echo.
echo [1] OS Version & Build:
ver

echo.
echo [2] Uptime:
systeminfo | find "System Boot Time"

echo.
echo [3] Disk Space (C:):
wmic logicaldisk where "DeviceID='C:'" get Size,FreeSpace,VolumeName /format:list

echo.
echo [4] Windows Defender Status:
powershell "Get-MpComputerStatus | Select-Object AMServiceEnabled, AntispywareEnabled, RealTimeProtectionEnabled, AntivirusSignatureLastUpdated"

echo.
echo [5] Windows Update Status:
powershell "Get-WindowsUpdateLog" 2>$null || powershell "(New-Object -ComObject Microsoft.Update.AutoUpdate).Results"

echo.
echo [6] Open Ports (Listening):
netstat -ano | findstr LISTENING

echo.
echo [7] Suspicious Scheduled Tasks (Non-Microsoft):
schtasks /query /fo csv /v | findstr /v "Microsoft" | findstr /v "TaskName"

echo.
echo Check completed. Press any key to exit.
pause >nul

Tóm tắt

  • File .bat/.cmd = Script lệnh Windows. Hữu ích cho automation.
  • Xuất hiện trên Desktop: Có thể do bạn, phần mềm cài đặt, **HOẶC MALWARE**.
  • LUÔN MỞ BẰNG NOTEPAD ĐỂ ĐỌC NỘI DUNG TRƯỚC KHI CHẠY.
  • Nghi ngờ malware → Upload VirusTotal, chạy sandbox (Hybrid Analysis, ANY.RUN), cách ly mạng, quét AV/EDR đầy đủ.
  • Tắt cảnh báo network drive: Thêm server vào "Local Intranet Sites" (an toàn) hoặc copy về local chạy.
Nguyên nhânMô tảMức độ rủi ro
Bạn tự tạo / tải vềScript tự động cài tool, fix lỗi, cleanup, map network drive...✅ An toàn (nếu bạn hiểu nội dung)
Phần mềm cài đặt tạo raMột số installer tạo shortcut .bat trên Desktop để chạy cấu hình sau cài✅ An toàn (thường là vendor hợp pháp)
Malware / Script độc hạiKẻ tấn công gửi file .bat qua email, download, USB – chạy lệnh xấu: xóa file, tắt AV, tải malware, reverse shell, thêm user admin, sửa registry...⚠️ NGUY HIỂM – Cần kiểm tra ngay
Penetration Test / Red TeamFile .bat dùng trong quá trình test xâm nhập (nếu bạn là admin/security)✅ An toàn (nếu do bạn/đội ngũ tạo)
Windows Update / System ScriptHiếm khi đặt trên Desktop, thường ở System32/Tasks✅ An toàn