Attiecas uz
Win 10 Ent LTSB 2016 Win 10 Ent LTSC 2019 Windows 10 IoT Enterprise LTSC 2021 Windows 10, version 22H2, all editions Windows 11 Home and Pro, version 22H2 Windows 11 Enterprise Multi-Session, version 22H2 Windows 11 Enterprise and Education, version 22H2 Windows 11 IoT Enterprise, version 22H2 Windows 11 SE, version 23H2 Windows 11 Home and Pro, version 23H2 Windows 11 Enterprise and Education, version 23H2 Windows 11 Enterprise Multi-Session, version 23H2 Windows 11 version 24H2, all editions Windows 11 version 25H2, all editions Windows Server 2008 Premium Assurance Windows Server 2008 R2 Premium Assurance Windows Server 2012 ESU Windows Server 2012 R2 ESU Windows Server 2016 Windows Server 2019 Windows Server 2022 Windows Server 2025

Sākotnējās publicēšanas datums: 2025. gada 9. decembris

KB ID: 5074596

Šajā rakstā aprakstītas izmaiņas, kas primāri ietekmē uzņēmuma vai IT pārvaldītu vidi, kur PowerShell skripti tiek izmantoti automatizācijai un tīmekļa satura izgūšanai. personas ja izmantojat ierīces personiskajiem vai mājas iestatījumiem, parasti nav jāveic nekādas darbības, jo šie scenāriji ir neparasti ārpus IT pārvaldītas vides.

Datuma maiņa

Apraksta maiņa

2025. gada 20. decembris

  • Sadaļai "Kopsavilkums" pievienojāt "Drošības brīdinājums".

  • Lai būtu skaidrāka, sadaļai "Kopsavilkums" pievienojāt šādu rindkopu: PowerShell komanda Invoke-WebRequest HTTP vai HTTPS pieprasījumu tīmekļa serverim un atgriež rezultātus. Šajā rakstā ir stingrās izmaiņas, kur Windows PowerShell 5.1 apzināti parāda drošības apstiprinājuma uzvedni, izmantojot komandu Invoke-WebRequest tīmekļa lapu ienesei bez īpašiem parametriem. Šī darbība tiek veikta pēc tam, kad atbalstītie Windows klienti un serveri ir instalējuši Windows Atjauninājumi 2025. gada 9. decembrī un pēc tam. Papildinformāciju skatiet CVE-2025-54100.

  • Sadaļas "Veikt darbību" 1. opcijā aizzīmēm pievienotas aizzīmes "Automatizētiem skriptiem vai ieplānotiem uzdevumiem".

    • Skriptiem, kas darbojas ar opciju Bez profila: Ja skriptam ir daudz Invoke-WebRequest izsaukumu gadījumu, paziņoiet $PSDefaultParameterValues['Invoke-WebRequest:UseBasicParsing'] = $true, kas atrodas skripta augšdaļā.

    • Ja invoke-WebRequest tiek izmantots kopā ar parametru -UseBasicParsing, pilna dokumentu objektu modeļa (DOM) parsēšana, izmantojot Internet Explorer komponentus (HTMLDocument interface (mshtml)), nav iespējama.

  • Sadaļas Darbības veikšanai 2. opcijas aizzīmes punktam "Modernizējiet pieeju saziņai tīmeklī" pievienota šāda aizzīme.

    • Invoke-Webrequest programmā Powershell Core (versija 7.x vai jaunāka) neatbalsta DOM parsēšanu, izmantojot Internet Explorer komponentus. Noklusējuma parsēšana droši izgūs saturu bez skripta izpildes.

Kopsavilkums

Windows PowerShell 5.1 tagad parāda drošības apstiprinājuma uzvedni, izmantojot komandu Izsaukt-WebRequest tīmekļa lapu ienesei bez īpašiem parametriem.

Drošības brīdinājums. Skripta izpildes Invoke-WebRequest parsē tīmekļa lapas saturu. Skripta kods tīmekļa lapā var tikt izpildīts, kad lapa tiek parsēta.

IETEICAMĀ DARBĪBA: izmantojiet slēdzi -UseBasicParsing, lai izvairītos no skripta koda izpildes.

Vai vēlaties turpināt?

Šī uzvedne brīdina, ka lapas skripti var darboties parsēšanas laikā un iesaka izmantot parametru -UseBasicParsing, lai izvairītos no skripta izpildes. Lietotājiem ir jāizvēlas turpināt vai atcelt darbību. Šīs izmaiņas palīdz aizsargāties pret ļaunprātīgu tīmekļa saturu, pieprasot lietotāja piekrišanu, pirms potenciāli riskantām darbībām.

PowerShell komanda Invoke-WebRequest padara HTTP vai HTTPS pieprasījumu tīmekļa serverim un atgriež rezultātus. Šajā rakstā dokumentē rūšu izmaiņas, kur Windows PowerShell 5.1 tīšām parāda drošības apstiprinājuma uzvedni, izmantojot komandu Invoke-WebRequest tīmekļa lapu ienesei bez īpašiem parametriem. Šī darbība tiek veikta pēc tam, kad atbalstītie Windows klienti un serveri ir instalējuši sistēmu Windows Atjauninājumi 2025. gada 9. decembrī un pēc tam. Papildinformāciju skatiet CVE-2025-54100.

Kas ir mainījies?

  • Iepriekšējā darbība

    • Pilna dokumenta objektu modeļa (DOM) parsēšana, izmantojot Internet Explorer komponentus (HTMLDocument Interface (mshtml)), kas var izpildīt skriptus no lejupielādētā satura.

  • Jauna darbība

    • Drošības apstiprinājuma uzvedne: Pēc 2025. gada 9. decembra Windows atjauninājumu instalēšanas, palaižot PowerShell 5.1 komandu Invoke-WebRequest (zināms arī kā curl), tiek izraisīta drošības uzvedne (ja netiek lietots īpašs parametrs). Uzvedne tiek rādīta PowerShell konsolē ar brīdinājumu par skripta izpildes riskuTas nozīmē, ka PowerShell pauzina, lai brīdinātu jūs, ka bez piesardzības pasākumi var izpildīt tīmekļa lapas skripta saturu jūsu sistēmā, kad tas tiek apstrādāts. Pēc noklusējuma, nospiežot taustiņu Enter (vai izvēloties ), darbība tiks atcelta drošības apsvērumu dēļ. PowerShell parādīs ziņojumu, ka tas tika atcelts drošības apsvērumu dēļ, un iesaka atkārtoti palaist komandu, drošai apstrādei izmantojot parametru -UseBasicParsing. Ja izvēlēsities Jā, PowerShell turpinās parsēt lapu, izmantojot vecāku metodi (pilna HTML parsēšana), kas nozīmē, ka tiks ielādēts saturs un iegultie skripti, līdz ar to tie tiks ielādēti. Būtībā, izvēloties Jā, jūs akceptējat risku un ļaujat izpildīt komandu kā iepriekš, izvēloties Nē (noklusējums), tiek apturēta darbība jūsu aizsardzībai.

    • Interaktīvs un skriptēts lietošana: Šīs uzvednes ievads galvenokārt ietekmē interaktīvu lietojumu. Interaktīvās sesijās redzēsit brīdinājumu un ir jāatbild. Automatizētiem skriptiem (neinteraktīviem scenārijiem, piemēram, ieplānotiem uzdevumiem vai CI konveijeriem) šī uzvedne var izraisīt skripta uzkāršanu, gaidot ievadi. Lai to novērstu, iesakām atjaunināt šādus skriptus, lai tieši izmantotu drošos parametrus (skatiet tālāk), pārliecinieties, vai tiem nav nepieciešama manuāla apstiprināšana.

Rīcība

Lielākā daļa PowerShell skriptu un komandu, kas izmanto komandu Invoke-WebRequest, turpinās darboties tikai ar nelielu modifikāciju vai bez tās. Piemēram, skripti, kas lejupielādē tikai saturu vai darbojas ar atbildes pamattekstu, jo teksts vai dati netiek ietekmēti, un nav jāveic nekādas izmaiņas. 

Ja jums ir skripti, kurus ietekmē šīs izmaiņas, izmantojiet kādu no šīm pieejām.

Satura ienesei nekādas darbības, ja parasti tiek izmantota komanda Izsaukt-WebRequest , ir satura (piemēram, failu lejupielādes vai statiska teksta lasīšana) ienese un nav atkarīga no uzlabotas vietnes mijiedarbības vai HTML DOM parsēšanas. Jaunā noklusējuma darbība ir drošāka — tīmekļa saturā iegultie skripti netiks palaisti bez jūsu atļaujas, un tā ir ieteicamā konfigurācija lielākajai daļai scenāriju. 

Interaktīvā lietojuma gadījumā vienkārši atbildiet Uz jauno drošības uzvedni (vai nospiediet taustiņu Enter, lai akceptētu noklusējumu) un atkārtoti izpildiet komandu ar parametru -UseBasicParsing, lai droši izgūtu saturu. Šādi netiks izpildīts skripta kods ieneses lapā. Ja bieži ienest tīmekļa saturu interaktīvi, apsveriet iespēju izmantot parametru -UseBasicParsing pēc noklusējuma komandās, lai pilnībā izlaistu uzvedni un nodrošinātu maksimālu drošību. 

Automatizētiem skriptiem vai ieplānotiem uzdevumiem atjauniniet tos, lai iekļautu parametru -UseBasicParsinginvoke-WebRequest izsaukumos. Tādējādi tiek iepriekš atlasīta drošā darbība, lai uzvedne nebūtu redzama un skripts turpina darboties bez pārtraukuma. Tādējādi automatizācija darbojas nevainojami pēc atjaunināšanas, vienlaikus izmantojot uzlabotās drošības priekšrocības.

  • Skriptiem, kas darbojas ar opciju -NoProfile: Ja skriptam ir daudz izsaukumu Invoke-WebRequest gadījumu, declare $PSDefaultParameterValues['Invoke-WebRequest:UseBasicParsing'] = $true skripta augšdaļā.

  • Ja invoke-WebRequest tiek izmantots kopā ar parametru -UseBasicParsing , pilna dokumentu objektu modeļa (DOM) parsēšana, izmantojot Internet Explorer komponentus (HTMLDocument interface (mshtml)), nav iespējama.

Skriptiem vai automatizācijai, kas nodarbojas ar neuzticamu vai publisku tīmekļa saturu un ir nepieciešama HTML struktūru vai veidlapu apstrāde, apsveriet iespēju tos mainīt vai atjaunināt ilgtermiņa drošībai. Tā vietā, lai paļauties uz PowerShell, lai parsēt un palaistu potenciāli bīstamas tīmekļa lapas skriptus, varat: 

  • Izmantojiet citas parsēšanas metodes vai bibliotēkas (piemēram, tīmekļa lapas saturu apstrādājot kā vienkāršu tekstu vai XML, izmantojot regex vai XML/HTML parsēšanu bibliotēkas, kas neizpilda skriptus).

  • Modernizējiet pieeju mijiedarbībai tīmeklī, piemēram, izmantojot jaunāku PowerShell core (7.x vai jaunāku versiju), kas nav atkarīga no Internet Explorer programmas un nepieļauj skriptu pašanu vai izmantojot specializētus tīmekļa brāķēšanas rīkus, kas saturu apstrādā drošāk. Paļaušanās uz internet Explorer raksturīgajiem līdzekļiem, jo pārlūkprogramma Internet Explorer ir novecojusi. Plānojiet pārrakstīt skriptu daļas, kas ir atkarīgas no šiem līdzekļiem, lai tās varētu strādāt vidē, kur tīmekļa saturs tiek droši apstrādāts.

    • Invoke-WebRequest programmā PowerShell Core (versija 7.x vai jaunāka) neatbalsta DOM parsēšanu, izmantojot Internet Explorer komponentus. Noklusējuma parsēšana droši izgūs saturu bez skripta izpildes.

  • Refactoring mērķis ir panākt nepieciešamo funkcionalitāti, neņemot vērā drošības riskus, tādējādi samazinot ar šo izmaiņu ieviestos drošākos noklusējuma iestatījumus.

Ja ir jāizmanto noteikta nepieciešamība izmantot komandas Invoke-WebRequest pilnas HTML parsēšanas iespējas (piemēram, mijiedarbība ar formas laukiem vai strukturētu datu brāzdošanu) un jūs uzticaties tīmekļa satura avotam, joprojām varat turpināt ar mantoto parsēšanas darbību katrā gadījumā. Interaktīvās sesijās tas vienkārši nozīmē, ka apstiprinājuma uzvednē ir jāizvēlas Jā, lai atļautu turpināt darbību. Katru reizi, kad to darīsit, saņemsit atgādinājumu par drošības risku. Turpināt bez parametra -UseBasicParsing būtu jābūt ierobežotam līdz scenārijiem, kad pilnībā uzticaties tīmekļa saturam (piemēram, iekšējām tīmekļa lietojumprogrammām jūsu kontrolē vai zināmām drošām tīmekļa vietnēm). 

Svarīgi!: Šāda pieeja nav ieteicama skriptiem, kas darbojas neuzticamā vai publiskā tīmekļa saturā, jo tā atkārtoti veicina klusuma skripta izpildes risku, kas šim atjauninājumam ir paredzēts, lai mazinātu to ietekmi. Turklāt neinteraktīvās automatizācijas gadījumā nav iebūvēta mehānisma, kas automātiski piekristu uzvednei, tāpēc paļauties uz pilnu parsēšanu skriptos nav ieteicams (papildus riskam). Šo opciju izmantojiet reti un tikai kā pagaidu mērvienību.

Bieži uzdotie jautājumi​​​​​​​

Parasti skripti, kas lejupielādē failus vai ienest tīmekļa saturu kā tekstu, joprojām darbosies. Lai izvairītos no uzvednes, pievienojiet parametru -UseBasicParsing.

 Skripti, kas izmanto uzlabotu HTML parsēšanu (piemēram, veidlapas vai DOM), var uzkārties vai izvadīt neapstrādātus datus, nevis strukturētus objektus; lai apstrādātu saturu atšķirīgi, ir jāpārslēdzas uz vienkāršu parsēšanu vai modificējiet skriptu. 

Vienmēr izmantojiet parametru -UseBasicParsing ar PowerShell skriptu komandu Invoke-WebRequest, lai nodrošinātu drošu, neinteraktīvu izpildi.  

Jā. Skripti atkarībā no mantotā parsēšanas ir jāatjaunina, lai nepieteiktos vai darītu darītāji.

PowerShell izmaiņas attiecas gan uz standarta atjauninājumiem, gan hotpatch atjauninājumiem, kā rezultātā mainās viena darbība.

Jā. PowerShell 7 jau izmanto drošu parsēšanu pēc noklusējuma.

Sazinieties ar moduļu īpašniekiem, lai saņemtu atbalsta plānus. Lai migrētu, īslaicīgi izmantojiet iespēju izmantot lietojumprogrammu uzticamam saturam.

Lai sagatavotos un validētu šīs izmaiņas, iesakām: 

  • Identificējiet skriptus, izmantojot DOM līdzekļus.

  • Automatizācijas pārbaude, izmantojot jauno noklusējumu.

  • Ierobežot mantoto pieteikšanu uzticamos avotos.

  • Plānojiet refactoring par neuzticamu saturu.

Nepieciešama papildu palīdzība?

Vēlaties vairāk opciju?

Izpētiet abonementa priekšrocības, pārlūkojiet apmācības kursus, uzziniet, kā aizsargāt ierīci un veikt citas darbības.