保護自定義動作的指導方針
使用自定義動作撰寫 Windows Installer 套件時,遵循下列指導方針,有助於在安裝期間維護安全的環境:
- 保護自定義動作所寫入的任何其他檔案。
- 檢查自定義動作所讀取之所有數據的緩衝區長度和有效性。 這包括可能提供數據給自定義動作的屬性,特別是那些使用使用者所提供的公用屬性的屬性。
- 請勿在任何您的安裝套件預定運行的平台上依賴系統不信任的外部 DLL。
- 請仔細考慮是否要使用具有提升權限或模擬的 自定義動作。 自訂動作,例如「安裝完成後開啟 URL」、「安裝完成後啟動軟體」或「安裝完成後啟動說明檔」,通常不需要較高的權限即可運作。 如果您的自定義動作必須以提升的 權限執行,請確保自定義動作程式碼防範緩衝區溢位和不小心載入不安全的程式碼。 請注意,在安裝執行階段,安裝程式會將資訊傳遞至具有提升許可權 許可權的程式,並執行腳本。 執行過程中運行的任何自定義動作,皆可能以提升的許可權執行。
- 收集使用者在 UI 序列期間所提供的所有資訊。 請勿提示使用者輸入任何無法使用公用屬性設定的資訊。
- 如果您的腳本自定義動作擴充屬性,請採取預防措施,防止自定義動作受到腳本插入的可能性。 腳本可能會以明文形式記錄。
請參閱 自訂動作安全性。