利用js代碼滲透(利用js代碼滲透程序)

本文目錄一覽:

網頁經常被插入js代碼,有什麼方法可以解決的..

1、說明你的網頁存在漏洞,有人利用你的漏洞修改了你的網頁。

2、也有可能是你的伺服器有其他漏洞,已經是別人的肉雞了。

3、ARP病毒也能在網頁中注入代碼,但不影響伺服器上的源代碼。

如果是第一種情況,推薦你用Acunetix

Web

Vulnerability

Scanner軟體對你的網站進行安全檢測,可以根據檢測的結果和修改建議對代碼進行修改。

js如何使用框架代碼

先引用框架文件,在使用裡面的方法!有現成的就直接調用,使用別人的框架一般都有API,最好是你看得懂別人的框架

網站被人掛的JS木馬,怎麼辦?

在程序中很容易找到掛馬的代碼,直接刪除,或則將你沒有傳伺服器的源程序覆蓋一次但反反覆復被掛就得深入解決掉此問題了。但這不是最好的解決辦法。最好的方法還是找專業做安全的來幫你解決掉

1.刪除JS里的混跡加密代碼,並做下JS目錄的許可權為只讀許可權。

為何網站JS內容被篡改,應該是網站存在漏洞。

2、 網站代碼漏洞,這需要有安全意識的程序員才能修復得了,通常是在出現被掛 馬以後才知道要針對哪方面入手修復;

3、也可以通過安全公司來解決,國內也就Sinesafe和綠盟等安全公司比較專業.

什麼是js注入?

JavaScript注入就是在瀏覽器地址欄中輸入一段js代碼,用來改變頁面js變數、頁面標籤的內容。

使用Javascript注入,用戶不需要關閉或保存網頁就可以改變其內容,這是在瀏覽器的地址欄上完成的。命令的語法如下:

javascript:alert(#command#)

滲透測試應該怎麼做呢?

01、信息收集

1、域名、IP、埠

域名信息查詢:信息可用於後續滲透

IP信息查詢:確認域名對應IP,確認IP是否真實,確認通信是否正常

埠信息查詢:NMap掃描,確認開放埠

發現:一共開放兩個埠,80為web訪問埠,3389為windows遠程登陸埠,嘿嘿嘿,試一下

發現:是Windows Server 2003系統,OK,到此為止。

2、指紋識別

其實就是網站的信息。比如通過可以訪問的資源,如網站首頁,查看源代碼:

看看是否存在文件遍歷的漏洞(如圖片路徑,再通過…/遍歷文件)

是否使用了存在漏洞的框架(如果沒有現成的就自己挖)

02、漏洞掃描

1、主機掃描

Nessus

經典主機漏掃工具,看看有沒有CVE漏洞:

2、Web掃描

AWVS(Acunetix | Website Security Scanner)掃描器

PS:掃描器可能會對網站構成傷害,小心謹慎使用。

03、滲透測試

1、弱口令漏洞

漏洞描述

目標網站管理入口(或資料庫等組件的外部連接)使用了容易被猜測的簡單字元口令、或者是默認系統賬號口令。

滲透測試

① 如果不存在驗證碼,則直接使用相對應的弱口令字典使用burpsuite 進行爆破

② 如果存在驗證碼,則看驗證碼是否存在繞過、以及看驗證碼是否容易識別

風險評級:高風險

安全建議

① 默認口令以及修改口令都應保證複雜度,比如:大小寫字母與數字或特殊字元的組合,口令長度不小於8位等

② 定期檢查和更換網站管理口令

2、文件下載(目錄瀏覽)漏洞

漏洞描述

一些網站由於業務需求,可能提供文件查看或下載的功能,如果對用戶查看或下載的文件不做限制,則惡意用戶就能夠查看或下載任意的文件,可以是源代碼文件、敏感文件等。

滲透測試

① 查找可能存在文件包含的漏洞點,比如js,css等頁面代碼路徑

② 看看有沒有文件上傳訪問的功能

③ 採用…/來測試能否誇目錄訪問文件

風險評級:高風險

安全建議

① 採用白名單機制限制伺服器目錄的訪問,以及可以訪問的文件類型(小心被繞過)

② 過濾【./】等特殊字元

③ 採用文件流的訪問返回上傳文件(如用戶頭像),不要通過真實的網站路徑。

示例:tomcat,默認關閉路徑瀏覽的功能:

param-namelistings/param-name

param-valuefalse/param-value

3、任意文件上傳漏洞

漏洞描述

目標網站允許用戶向網站直接上傳文件,但未對所上傳文件的類型和內容進行嚴格的過濾。

滲透測試

① 收集網站信息,判斷使用的語言(PHP,ASP,JSP)

② 過濾規則繞過方法:文件上傳繞過技巧

風險評級:高風險

安全建議

① 對上傳文件做有效文件類型判斷,採用白名單控制的方法,開放只允許上傳的文件型式;

② 文件類型判斷,應對上傳文件的後綴、文件頭、圖片類的預覽圖等做檢測來判斷文件類型,同時注意重命名(Md5加密)上傳文件的文件名避免攻擊者利用WEB服務的缺陷構造畸形文件名實現攻擊目的;

③ 禁止上傳目錄有執行許可權;

④ 使用隨機數改寫文件名和文件路徑,使得用戶不能輕易訪問自己上傳的文件。

4、命令注入漏洞

漏洞描述

目標網站未對用戶輸入的字元進行特殊字元過濾或合法性校驗,允許用戶輸入特殊語句,導致各種調用系統命令的web應用,會被攻擊者通過命令拼接、繞過黑名單等方式,在服務端運行惡意的系統命令。

滲透測試

風險評級:高風險

安全建議

① 拒絕使用拼接語句的方式進行參數傳遞;

② 盡量使用白名單的方式(首選方式);

③ 過濾危險方法、特殊字元,如:【|】【】【;】【』】【”】等

5、SQL注入漏洞

漏洞描述

目標網站未對用戶輸入的字元進行特殊字元過濾或合法性校驗,允許用戶輸入特殊語句查詢後台資料庫相關信息

滲透測試

① 手動測試:判斷是否存在SQL注入,判斷是字元型還是數字型,是否需要盲注

② 工具測試:使用sqlmap等工具進行輔助測試

風險評級:高風險

安全建議

① 防範SQL注入攻擊的最佳方式就是將查詢的邏輯與其數據分隔,如Java的預處理,PHP的PDO

② 拒絕使用拼接SQL的方式

6、跨站腳本漏洞

漏洞描述

當應用程序的網頁中包含不受信任的、未經恰當驗證或轉義的數據時,或者使用可以創建 HTML或JavaScript 的瀏覽器 API 更新現有的網頁時,就會出現 XSS 缺陷。XSS 讓攻擊者能夠在受害者的瀏覽器中執行腳本,並劫持用戶會話、破壞網站或將用戶重定向到惡意站點。

三種XSS漏洞:

① 存儲型:用戶輸入的信息被持久化,並能夠在頁面顯示的功能,都可能存在存儲型XSS,例如用戶留言、個人信息修改等。

② 反射型:URL參數需要在頁面顯示的功能都可能存在反射型跨站腳本攻擊,例如站內搜索、查詢功能。

③ DOM型:涉及DOM對象的頁面程序,包括:document.URL、document.location、document.referrer、window.location等

滲透測試

存儲型,反射型,DOM型

風險評級:高風險

安全建議

① 不信任用戶提交的任何內容,對用戶輸入的內容,在後台都需要進行長度檢查,並且對【】【】【”】【』】【】等字元做過濾

② 任何內容返回到頁面顯示之前都必須加以html編碼,即將【】【】【”】【』】【】進行轉義。

7、跨站請求偽造漏洞

漏洞描述

CSRF,全稱為Cross-Site Request Forgery,跨站請求偽造,是一種網路攻擊方式,它可以在用戶毫不知情的情況下,以用戶的名義偽造請求發送給被攻擊站點,從而在未授權的情況下進行許可權保護內的操作,如修改密碼,轉賬等。

滲透測試

風險評級:中風險(如果相關業務極其重要,則為高風險)

安全建議

① 使用一次性令牌:用戶登錄後產生隨機token並賦值給頁面中的某個Hidden標籤,提交表單時候,同時提交這個Hidden標籤並驗證,驗證後重新產生新的token,並賦值給hidden標籤;

② 適當場景添加驗證碼輸入:每次的用戶提交都需要用戶在表單中填寫一個圖片上的隨機字元串;

③ 請求頭Referer效驗,url請求是否前部匹配Http(s)?/ServerHost

④ 關鍵信息輸入確認提交信息的用戶身份是否合法,比如修改密碼一定要提供原密碼輸入

⑤ 用戶自身可以通過在瀏覽其它站點前登出站點或者在瀏覽器會話結束後清理瀏覽器的cookie;

8、內部後台地址暴露

漏洞描述

一些僅被內部訪問的地址,對外部暴露了,如:管理員登陸頁面;系統監控頁面;API介面描述頁面等,這些會導致信息泄露,後台登陸等地址還可能被爆破。

滲透測試

① 通過常用的地址進行探測,如login.html,manager.html,api.html等;

② 可以借用burpsuite和常規頁面地址字典,進行掃描探測

風險評級:中風險

安全建議

① 禁止外網訪問後台地址

② 使用非常規路徑(如對md5加密)

9、信息泄露漏洞

漏洞描述

① 備份信息泄露:目標網站未及時刪除編輯器或者人員在編輯文件時,產生的臨時文件,或者相關備份信息未及時刪除導致信息泄露。

② 測試頁面信息泄露:測試界面未及時刪除,導致測試界面暴露,被他人訪問。

③ 源碼信息泄露:目標網站文件訪問控制設置不當,WEB伺服器開啟源碼下載功能,允許用戶訪問網站源碼。

④ 錯誤信息泄露:目標網站WEB程序和伺服器未屏蔽錯誤信息回顯,頁面含有CGI處理錯誤的代碼級別的詳細信息,例如SQL語句執行錯誤原因,PHP的錯誤行數等。

⑤ 介面信息泄露:目標網站介面訪問控制不嚴,導致網站內部敏感信息泄露。

滲透測試

① 備份信息泄露、測試頁面信息泄露、源碼信息泄露,測試方法:使用字典,爆破相關目錄,看是否存在相關敏感文件

② 錯誤信息泄露,測試方法:發送畸形的數據報文、非正常的報文進行探測,看是否對錯誤參數處理妥當。

③ 介面信息泄露漏洞,測試方法:使用爬蟲或者掃描器爬取獲取介面相關信息,看目標網站對介面許可權是否合理

風險評級:一般為中風險,如果源碼大量泄漏或大量客戶敏感信息泄露。

安全建議

① 備份信息泄露漏洞:刪除相關備份信息,做好許可權控制

② 測試頁面信息泄露漏洞:刪除相關測試界面,做好許可權控制

③ 源碼信息泄露漏洞:做好許可權控制

④ 錯誤信息泄露漏洞:將錯誤信息對用戶透明化,在CGI處理錯誤後可以返回友好的提示語以及返回碼。但是不可以提示用戶出錯的代碼級別的詳細原因

⑤ 介面信息泄露漏洞:對介面訪問許可權嚴格控制

10、失效的身份認證

漏洞描述

通常,通過錯誤使用應用程序的身份認證和會話管理功能,攻擊者能夠破譯密碼、密鑰或會話令牌, 或者利用其它開發缺陷來暫時性或永久性冒充其他用戶的身份。

滲透測試

① 在登陸前後觀察,前端提交信息中,隨機變化的數據,總有與當前已登陸用戶進行綁定的會話唯一標識,常見如cookie

② 一般現在網站沒有那種簡單可破解的標識,但是如果是跨站認證,單點登錄場景中,可能為了開發方便而簡化了身份認證

風險評級:高風險

安全建議

① 使用強身份識別,不使用簡單弱加密方式進行身份識別;

② 伺服器端使用安全的會話管理器,在登錄後生成高度複雜的新隨機會話ID。會話ID不能在URL中,可以安全地存儲,在登出、閑置超時後使其失效。

11、失效的訪問控制

漏洞描述

未對通過身份驗證的用戶實施恰當的訪問控制。攻擊者可以利用這些缺陷訪問未經授權的功能或數據,例如:訪問其他用戶的帳戶、查看敏感文件、修改其他用戶的數據、更改訪問許可權等。

滲透測試

① 登入後,通過burpsuite 抓取相關url 鏈接,獲取到url 鏈接之後,在另一個瀏覽器打開相關鏈接,看能夠通過另一個未登入的瀏覽器直接訪問該功能點。

② 使用A用戶登陸,然後在另一個瀏覽器使用B用戶登陸,使用B訪問A獨有的功能,看能否訪問。

風險評級:高風險

安全建議

① 除公有資源外,默認情況下拒絕訪問非本人所有的私有資源;

② 對API和控制器的訪問進行速率限制,以最大限度地降低自動化攻擊工具的危害;

③ 當用戶註銷後,伺服器上的Cookie,JWT等令牌應失效;

④ 對每一個業務請求,都進行許可權校驗。

12、安全配置錯誤

漏洞描述

應用程序缺少適當的安全加固,或者雲服務的許可權配置錯誤。

① 應用程序啟用或安裝了不必要的功能(例如:不必要的埠、服務、網頁、帳戶或許可權)。

② 默認帳戶的密碼仍然可用且沒有更改。

③ 錯誤處理機制向用戶披露堆棧跟蹤或其他大量錯誤信息。

④ 對於更新的系統,禁用或不安全地配置最新的安全功能。

⑤ 應用程序伺服器、應用程序框架(如:Struts、Spring、ASP.NET)、庫文件、資料庫等沒有進行相關安全配置。

滲透測試

先對應用指紋等進行信息搜集,然後針對搜集的信息,看相關應用默認配置是否有更改,是否有加固過;埠開放情況,是否開放了多餘的埠;

風險評級:中風險

安全建議

搭建最小化平台,該平台不包含任何不必要的功能、組件、文檔和示例。移除或不安裝不適用的功能和框架。在所有環境中按照標準的加固流程進行正確安全配置。

13、使用含有已知漏洞的組件

漏洞描述

使用了不再支持或者過時的組件。這包括:OS、Web伺服器、應用程序伺服器、資料庫管理系統(DBMS)、應用程序、API和所有的組件、運行環境和庫。

滲透測試

① 根據前期信息搜集的信息,查看相關組件的版本,看是否使用了不在支持或者過時的組件。一般來說,信息搜集,可通過http返回頭、相關錯誤信息、應用指紋、埠探測(Nmap)等手段搜集。

② Nmap等工具也可以用於獲取操作系統版本信息

③ 通過CVE,CNVD等平台可以獲取當前組件版本是否存在漏洞

風險評級:按照存在漏洞的組件的安全風險值判定當前風險。

安全建議

① 移除不使用的依賴、不需要的功能、組件、文件和文檔;

② 僅從官方渠道安全的獲取組件(盡量保證是最新版本),並使用簽名機制來降低組件被篡改或加入惡意漏洞的風險;

③ 監控那些不再維護或者不發布安全補丁的庫和組件。如果不能打補丁,可以考慮部署虛擬補丁來監控、檢測或保護。

詳細學習可參考:

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/199431.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-05 10:21
下一篇 2024-12-05 10:21

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • Python字元串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字元串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字元串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智慧、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變數和數…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在著手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • Python購物車程序

    Python購物車程序是一款基於Python編程語言開發的程序,可以實現購物車的相關功能,包括商品的添加、購買、刪除、統計等。 一、添加商品 添加商品是購物車程序的基礎功能之一,用…

    編程 2025-04-29

發表回復

登錄後才能評論