❶ "禁止腳本運行"是什麼意思
「腳本錯誤」形成的原因是因為訪問者所使用的瀏覽器不能完全支持頁面里的腳本,而且出現頻率並不低。遇到「腳本錯誤」時一般會彈出一個非常難看的腳本運行錯誤警告窗口,而事實上,腳本錯誤並不會影響網站瀏覽,因此這一警告可謂多此一舉。要關閉警告則可以在瀏覽器的工具菜單選擇Internet選項,然後單擊高級屬性頁。進入到瀏覽標簽,並選中「禁止腳本調試」復選框,以後你就不會再收到這些警告了
暈,我那樣解決就ok了。那再給你多點參考吧!
IE中的腳本錯誤
某個網頁可能會無法正常顯示或工作,您可能會收到一條類似於以下之一的錯誤消息:
該網頁上的問題可能使其無法正常顯示或功能不正常。以後,雙擊顯示在狀態欄中的警告圖標,就可以顯示上述消息。
如果您單擊「顯示詳細信息」,則會顯示類似於下面的錯誤詳細信息:
Line:4
Char:1
Error:Object doesn』t support this property or method.
Code:0
URL:http://Webserver/page.htm
A Runtime Error has occured.
Do you wish to Debug?
Line:4
Error:Object doesn』t support this property or method.
下面的警告消息也可能出現在 Microsoft Internet Explorer「狀態」欄中:
已完畢,但網頁上有錯誤
出現此問題是因為該網頁的 HTML 源代碼不能使用客戶端腳本(如 Microsoft JScript 或 Visual basic 腳本)正確工作。發生此問題可能是因為以下原因之一: • 網頁的 HTML 源代碼中有問題。
• 您的計算機或網路上阻止了活動腳本、ActiveX 控制項或 Java 小程序。Internet Explorer 或另外一種程序(如防病毒程序或防火牆)可以配置為阻止活動腳本、ActiveX 控制項或 Java 小程序
• 防病毒軟體配置為掃描您的「臨時 Internet 文件」或「已下載的程序文件」文件夾。
• 您計算機上的腳本引擎損壞或過時。
• 您計算機上的 Internet 相關文件夾損壞。
• 您的視頻卡驅動程序已損壞或者已過時。
• 您計算機上的 DirectX 組件損壞或過時。
注意:伺服器端腳本 -- 如 Active Server pages (ASp) 中的 Visual basic 腳本 -- 運行在 Web 伺服器上。因伺服器端腳本故障而發生的腳本錯誤不在 Internet Explorer 中生成錯誤消息,但也可能會創建一個不能正確顯示或工作的網頁。本文中的故障排除信息適用於伺服器端腳本錯誤。如果您懷疑伺服器端腳本有問題,請與 Web 伺服器的管理員聯系。
解決方案
使用本文中的故障排除方法時要按它們出現的順序進行。在您完成一個故障排除部分後,請進行測試以確定是否仍發生此腳本錯誤。如果問題已解決,則不必繼續下一部分。如果問題未解決,則繼續執行下一部分。
從另一個用戶帳戶、另一個瀏覽器和另一台計算機測試網頁
如果問題只在您查看一個或兩個網頁時發生,則從另一個用戶帳戶、另一個瀏覽器或另一台計算機查看這些網頁,以確定問題是否依然存在。如果腳本錯誤依然存在,則可能是網頁的編寫有問題。請與網站管理員或內容開發者聯系,告訴他們網頁存在的問題。如果從另一個用戶帳戶使用網頁時腳本錯誤未發生,則問題可能是您的用戶配置文件的文件或設置造成的。如果在從另一個瀏覽器或另一台計算機使用網頁時腳本錯誤未發生,則繼續進行故障排除操作。
確認活動腳本、ActiveX 和 Java 未被阻止
確認您計算機上的 Internet Explorer 或另外一種程序(如防病毒程序或防火牆)未配置為阻止活動腳本、ActiveX 控制項或 Java 小程序。在 Internet Explorer 的「高」安全級別,活動腳本、ActiveX 控制項和 Java 小程序被關閉。默認情況下,Internet Explorer 6 和某些 Internet Explorer 5.x 版本針對受限站點區域使用「高」安全級別。默認情況下,Microsoft Windows Server 2003 針對受限站點區域和 Internet 區域使用「高」安全級別。如要為當前網頁重置 Internet Explorer 安全設置,請按照下列步驟操作:1. 啟動 Internet Explorer。
2. 在「工具」菜單上,單擊「Internet 選項」。
3. 在「Internet 選項」對話框中,單擊「安全」。
4. 單擊「默認級別」。
5. 單擊「確定」。
請參見您使用的防病毒程序或防火牆的文檔資料,以確定如何打開腳本、ActiveX 和 Java 小程序。
確認您的防病毒程序未設置為掃描「臨時 Internet 文件」或「已下載的程序文件」文件夾
請參見您使用的防病毒程序的文檔資料,以確定如何防止該程序掃描「臨時 Internet 文件」或「已下載的程序文件」文件夾。
刪除所有臨時的 Internet 相關文件
從您的計算機中刪除所有臨時的 Internet 相關文件。為此,請按照下列步驟操作:1. 啟動 Internet Explorer。
2. 在「工具」菜單上,單擊「Internet 選項」。
3. 單擊「常規」選項卡。
4. 在「Internet 臨時文件」下,單擊「設置」。
5. 單擊「刪除文件」。
6. 單擊「確定」。
7. 單擊「刪除 Cookies」。
8. 單擊「確定」。
9. 在「歷史記錄」下,單擊「清除歷史記錄」,然後單擊「是」。
10. 單擊「確定」。
參考資料:http://..com/question/28138576.html?fr=qrl3
回答者:yeweijia0504 - 秀才 二級
❷ java script 中什麼是死循環如何規避
當發送某個請求,該請求將會在很大的一段時間內,都無法獲取介面的返回,程序好像進入假死狀態一樣,稱為死循環。
解決方法:因為在這些場景下,我們無法控制腳本的程序邏輯,無法改動腳本的代碼,所以有必要對腳本的執行進行控制。我們可以通過非同步調用的方式,防止腳本執行阻塞對主程序帶來的負面影響。並且通過添加超時機制,對腳本執行超時的線程進行強制關閉,避免有死循環嫌疑的惡意腳本對系統資源的惡意消耗。
❸ vb的WebBrowser控制項怎樣避免瀏覽器腳本錯誤
啟動IE,執行「工具→Internet選項」菜單,選擇「高級」選項卡,選中「禁止腳本調試」復選框,最後單擊「確定」按鈕即可。
❹ 如何讓apache不執行某些php腳本
進入php源程序目錄中的ext目錄中,這里存放著各個擴展模塊的源代碼,選擇你需要的模塊,比如curl模塊:cd curl 執行phpize生成編譯文件,phpize在PHP安裝目錄的bin目錄下 /usr/local/php5/bin/phpize 運行時,可能會報錯:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly and then rerun this script.,需要安裝autoconf: yum install autoconf(RedHat或者CentOS)、apt-get install autoconf(Ubuntu Linux) /usr/local/php5/bin/php -v 執行這個命令時,php會去檢查配置文件是否正確,如果有配置錯誤,這里會報錯,可以根據錯誤信息去排查!
❺ 跨站腳本攻擊的預防
從網站開發者角度,如何防護XSS攻擊?
來自應用安全國際組織OWASP的建議,對XSS最佳的防護應該結合以下兩種方法:驗證所有輸入數據,有效檢測攻擊;對所有輸出數據進行適當的編碼,以防止任何已成功注入的腳本在瀏覽器端運行。具體如下:
輸入驗證:某個數據被接受為可被顯示或存儲之前,使用標准輸入驗證機制,驗證所有輸入數據的長度、類型、語法以及業務規則。
輸出編碼:數據輸出前,確保用戶提交的數據已被正確進行entity編碼,建議對所有字元進行編碼而不僅局限於某個子集。
明確指定輸出的編碼方式:不要允許攻擊者為你的用戶選擇編碼方式(如ISO 8859-1或 UTF 8)。
注意黑名單驗證方式的局限性:僅僅查找或替換一些字元(如< >或類似script的關鍵字),很容易被XSS變種攻擊繞過驗證機制。
警惕規范化錯誤:驗證輸入之前,必須進行解碼及規范化以符合應用程序當前的內部表示方法。請確定應用程序對同一輸入不做兩次解碼。
從網站用戶角度,如何防護XSS攻擊?
當你打開一封Email或附件、瀏覽論壇帖子時,可能惡意腳本會自動執行,因此,在做這些操作時一定要特別謹慎。建議在瀏覽器設置中關閉JavaScript。如果使用IE瀏覽器,將安全級別設置到「高」。具體可以參照瀏覽器安全的相關文章。
這里需要再次提醒的是,XSS攻擊其實伴隨著社會工程學的成功應用,需要增強安全意識,只信任值得信任的站點或內容。可以通過一些檢測工具進行xss的漏洞檢測,類似工具有億思網站安全檢測平台。針對xss的漏洞帶來的危害是巨大,如有發現,應立即修復漏洞。
❻ 如何取消阻止跨站腳本
取消阻止跨站腳本,請按以下步驟操作:
1、點擊 IE8 的「工具」-「Internet 選項」。
(6)如何防止腳本的執行擴展閱讀
IE瀏覽器的安全構架:
Internet Explorer使用一個基於區域的安全架構,意思是說網站按特寫的條件組織在一起。它允許對大量的功能進行限制,也允許只對指定功能進行限制。
對瀏覽器的補丁和更新通過Windows更新服務以及自動更新定期發布以供使用。
最新版的Internet Explorer提供了一個下載監視器和安裝監視器,允許用戶分兩步選擇是否下載和安裝可執行程序。這可以防止惡意軟體被安裝。
用Internet Explorer下載的可執行文件被操作系統標為潛在的不安全因素,每次都會要求用戶確認他們是否想執行該程序,直到用戶確認該文件為「安全」為止。
參考資料來源:網路-Internet Explorer
❼ 解析如何防止XSS跨站腳本攻擊
不可信數據 不可信數據通常是來自HTTP請求的數據,以URL參數、表單欄位、標頭或者Cookie的形式。不過從安全形度來看,來自資料庫、網路伺服器和其他來源的數據往往也是不可信的,也就是說,這些數據可能沒有完全通過驗證。 應該始終對不可信數據保持警惕,將其視為包含攻擊,這意味著在發送不可信數據之前,應該採取措施確定沒有攻擊再發送。由於應用程序之間的關聯不斷深化,下游直譯程序執行的攻擊可以迅速蔓延。 傳統上來看,輸入驗證是處理不可信數據的最好辦法,然而,輸入驗證法並不是注入式攻擊的最佳解決方案。首先,輸入驗證通常是在獲取數據時開始執行的,而此時並不知道目的地所在。這也意味著我們並不知道在目標直譯程序中哪些字元是重要的。其次,可能更加重要的是,應用程序必須允許潛在危害的字元進入,例如,是不是僅僅因為SQL認為Mr. O'Malley名字包含特殊字元他就不能在資料庫中注冊呢? 雖然輸入驗證很重要,但這始終不是解決注入攻擊的完整解決方案,最好將輸入攻擊作為縱深防禦措施,而將escaping作為首要防線。 解碼(又稱為Output Encoding) 「Escaping」解碼技術主要用於確保字元作為數據處理,而不是作為與直譯程序的解析器相關的字元。有很多不同類型的解碼,有時候也被成為輸出「解碼」。有些技術定義特殊的「escape」字元,而其他技術則包含涉及若干字元的更復雜的語法。 不要將輸出解碼與Unicode字元編碼的概念弄混淆了,後者涉及映射Unicode字元到位序列。這種級別的編碼通常是自動解碼,並不能緩解攻擊。但是,如果沒有正確理解伺服器和瀏覽器間的目標字元集,有可能導致與非目標字元產生通信,從而招致跨站XSS腳本攻擊。這也正是為所有通信指定Unicode字元編碼(字元集)(如UTF-8等)的重要所在。 Escaping是重要的工具,能夠確保不可信數據不能被用來傳遞注入攻擊。這樣做並不會對解碼數據造成影響,仍將正確呈現在瀏覽器中,解碼只能阻止運行中發生的攻擊。 注入攻擊理論 注入攻擊是這樣一種攻擊方式,它主要涉及破壞數據結構並通過使用特殊字元(直譯程序正在使用的重要數據)轉換為代碼結構。XSS是一種注入攻擊形式,瀏覽器作為直譯程序,攻擊被隱藏在HTML文件中。HTML一直都是代碼和數據最差的mashup,因為HTML有很多可能的地方放置代碼以及很多不同的有效編碼。HTML是很復雜的,因為它不僅是層次結構的,而且還包含很多不同的解析器(XML、HTML、JavaScript、VBScript、CSS、URL等)。 要想真正明白注入攻擊與XSS的關系,必須認真考慮HTML DOM的層次結構中的注入攻擊。在HTML文件的某個位置(即開發者允許不可信數據列入DOM的位置)插入數據,主要有兩種注入代碼的方式: Injecting UP,上行注入 最常見的方式是關閉現有的context並開始一個新的代碼context,例如,當你關閉HTML屬性時使用">並開始新的 可以終止腳本塊,即使該腳本塊被注入腳本內方法調用內的引用字元,這是因為HTML解析器在JavaScript解析器之前運行。 Injecting DOWN,下行注入 另一種不太常見的執行XSS注入的方式就是,在不關閉當前context的情況下,引入一個subcontext。例如,將改為 ,並不需要躲開HTML屬性context,相反只需要引入允許在src屬性內寫腳本的context即可。另一個例子就是CSS屬性中的expression()功能,雖然你可能無法躲開引用CSS屬性來進行上行注入,你可以採用x ss:expression(document.write(document.cookie))且無需離開現有context。 同樣也有可能直接在現有context內進行注入,例如,可以採用不可信的輸入並把它直接放入JavaScript context。這種方式比你想像的更加常用,但是根本不可能利用escaping(或者任何其他方式)保障安全。從本質上講,如果這樣做,你的應用程序只會成為攻擊者將惡意代碼植入瀏覽器的渠道。 本文介紹的規則旨在防止上行和下行XSS注入攻擊。防止上行注入攻擊,你必須避免那些允許你關閉現有context開始新context的字元;而防止攻擊跳躍DOM層次級別,你必須避免所有可能關閉context的字元;下行注入攻擊,你必須避免任何可以用來在現有context內引入新的sub-context的字元。 積極XSS防禦模式 本文把HTML頁面當作一個模板,模板上有很多插槽,開發者允許在這些插槽處放置不可信數據。在其他地方放置不可信數據是不允許的,這是「白名單」模式,否認所有不允許的事情。 根據瀏覽器解析HTML的方式的不同,每種不同類型的插槽都有不同的安全規則。當你在這些插槽處放置不可信數據時,必須採取某些措施以確保數據不會「逃離」相應插槽並闖入允許代碼執行的context。從某種意義上說,這種方法將HTML文檔當作參數化的資料庫查詢,數據被保存在具體文職並與escaping代碼context相分離。 本文列出了最常見的插槽位置和安全放置數據的規則,基於各種不同的要求、已知的XSS載體和對流行瀏覽器的大量手動測試,我們保證本文提出的規則都是安全的。 定義好插槽位置,開發者們在放置任何數據前,都應該仔細分析以確保安全性。瀏覽器解析是非常棘手的,因為很多看起來無關緊要的字元可能起著重要作用。 為什麼不能對所有不可信數據進行HTML實體編碼? 可以對放入HTML文檔正文的不可行數據進行HTML實體編碼,如 標簽內。也可以對進入屬性的不可行數據進行實體編碼,尤其是當屬性中使用引用符號時。但是HTML實體編碼並不總是有效,例如將不可信數據放入 directlyinascript insideanHTMLcomment inanattributename <...NEVERPUTUNTRUSTEDDATAHERE...href="/test"/> inatagname 更重要的是,不要接受來自不可信任來源的JavaScript代碼然後運行,例如,名為「callback」的參數就包含JavaScript代碼段,沒有解碼能夠解決。 No.2 – 在向HTML元素內容插入不可信數據前對HTML解碼 這條規則適用於當你想把不可信數據直接插入HTML正文某處時,這包括內部正常標簽(div、p、b、td等)。大多數網站框架都有HTML解碼的方法且能夠躲開下列字元。但是,這對於其他HTML context是遠遠不夠的,你需要部署其他規則。 ...... ...... 以及其他的HTML常用元素 使用HTML實體解碼躲開下列字元以避免切換到任何執行內容,如腳本、樣式或者事件處理程序。在這種規格中推薦使用十六進制實體,除了XML中5個重要字元(&、<、 >、 "、 ')外,還加入了斜線符,以幫助結束HTML實體。 &-->& <-->< >-->> "-->" '-->''isnotrecommended /-->/ ESAPI參考實施 Stringsafe=ESAPI.encoder().encodeForHTML(request.getParameter("input")); No.3 – 在向HTML常見屬性插入不可信數據前進行屬性解碼 這條規則是將不可信數據轉化為典型屬性值(如寬度、名稱、值等),這不能用於復雜屬性(如href、src、style或者其他事件處理程序)。這是及其重要的規則,事件處理器屬性(為HTML JavaScript Data Values)必須遵守該規則。 content insidesinglequotedattribute 除了字母數字字元外,使用小於256的ASCII值HH格式(或者命名的實體)對所有數據進行解碼以防止切換屬性。這條規則應用廣泛的原因是因為開發者常常讓屬性保持未引用,正確引用的屬性只能使用相應的引用進行解碼。未引用屬性可以被很多字元破壞,包括[space] % * + , - / ; < = > ^ 和 |。 ESAPI參考實施 String safe = ESAPI.encoder().encodeForHTMLAttribute( request.getParameter( "input" ) ); No.4 – 在向HTML JavaScript Data Values插入不可信數據前,進行JavaScript解碼 這條規則涉及在不同HTML元素上制定的JavaScript事件處理器。向這些事件處理器放置不可信數據的唯一安全位置就是「data value」。在這些小代碼塊放置不可信數據是相當危險的,因為很容易切換到執行環境,因此請小心使用。 insideaquotedstring onesideofanexpression insideUNquotedeventhandler insidequotedeventhandler insidequotedeventhandler 除了字母數字字元外,使用小於256的ASCII值xHH格式 對所有數據進行解碼以防止將數據值切換至腳本內容或者另一屬性。不要使用任何解碼捷徑(如" )因為引用字元可能被先運行的HTML屬性解析器相匹配。如果事件處理器被引用,則需要相應的引用來解碼。這條規則的廣泛應用是因為開發者經常讓事件處理器保持未引用。正確引用屬性只能使用相應的引用來解碼,未引用屬性可以使用任何字元(包括[space] % * + , - / ; < = > ^ 和|)解碼。同時,由於HTML解析器比JavaScript解析器先運行,關閉標簽能夠關閉腳本塊,即使腳本塊位於引用字元串中。 ESAPI參考實施 Stringsafe=ESAPI.encoder().encodeForJavaScript(request.getParameter("input")); No.5 – 在向HTML 樣式屬性值插入不可信數居前,進行CSS解碼 當你想將不可信數據放入樣式表或者樣式標簽時,可以用此規則。CSS是很強大的,可以用於許多攻擊。因此,只能在屬性值中使用不可信數據而不能在其他樣式數據中使用。不能將不可信數據放入復雜的屬性(如url,、behavior、和custom (-moz-binding))。同樣,不能將不可信數據放入允許JavaScript的IE的expression屬性值。 propertyvalue textpropertyvalue 除了字母數字字元外,使用小於256的ASCII值HH格式對所有數據進行解碼。不要使用任何解碼捷徑(如" )因為引用字元可能被先運行的HTML屬性解析器相匹配,防止將數據值切換至腳本內容或者另一屬性。同時防止切換至expression或者其他允許腳本的屬性值。如果屬性被引用,將需要相應的引用進行解碼,所有的屬性都應該被引用。未引用屬性可以使用任何字元(包括[space] % * + , - / ; < = > ^ 和|)解碼。同時,由於HTML解析器比JavaScript解析器先運行,標簽能夠關閉腳本塊,即使腳本塊位於引用字元串中。 ESAPI參考實施 Stringsafe=ESAPI.encoder().encodeForCSS(request.getParameter("input")); No.6- 在向HTML URL屬性插入不可信數據前,進行URL解碼 當你想將不可信數據放入鏈接到其他位置的link中時需要運用此規則。這包括href和src屬性。還有很多其他位置屬性,不過我們建議不要在這些屬性中使用不可信數據。需要注意的是在javascript中使用不可信數據的問題,不過可以使用上述的HTML JavaScript Data Value規則。 linkanormallink animagesource ascriptsource 除了字母數字字元外,使用小於256的ASCII值%HH 解碼格式對所有數據進行解碼。在數據中保護不可信數據:URL不能夠被允許,因為沒有好方法來通過解碼來切換URL以避免攻擊。所有的屬性都應該被引用。未引用屬性可以使用任何字元(包括[space] % * + , - / ; < = > ^ 和|)解碼。 請注意實體編碼在這方面是沒用的。
❽ 如何防止javascript 腳步注入
XSS 過濾下就行~
❾ 如何保護一個程序執行,不被任何打斷或改變
防止被幹掉,比較麻煩,如果有源代碼,盡可能編譯成服務程序、驅動程序。
如果是現成的可執行文件,設置可執行文件的許可權如系統許可權,將殺進程的許可權降低
另外,可以設置計劃任務,定時啟動
還可以用雙進程方式,檢查一個被殺死,另一個立即啟動,等等。