Java程式碼審計的一些基礎知識你知道嗎
阿新 • • 發佈:2021-09-03
目錄
- P生命週期
- 詳細過程:
- War包結構
- 內建物件
- JAVA 中的危險函式
- 名詞概念
- 總結
JSP生命週期
關鍵詞:Web伺服器
,JSP容器
,JVM(Java虛擬機器)
,servlet
詳細過程:
- 客戶端向Web伺服器發起
- JSP請求Web伺服器將請求傳送給JSP容器(中介軟體)
- JSP容器中的 JSP引擎 將 HTTP 請求轉化為Servlet
- JSP引擎再將Servlet編譯為 可執行的class類,並將原始請求交給Servlet引擎
- Web伺服器的某元件將會呼叫servlet引擎,然後載入並執行servlet類。在執行的過程中,servlet產生HTML格式的輸出將其內嵌與HTTP 的response上交給Web伺服器
- Web伺服器以靜態的HTML網頁的形式將HTTP的response返回給瀏覽器
War包結構
在web.xml中 會有此專案的框架資訊,三方軟體資訊,比如Spring,Filter過濾器等等
JAVA 內建物件
Java crVYYmZWgf內建物件不用new,就可以直接獲取物件進行使用。比如 out.print()
request,response,pageContext,session,application,out,config,page,exception
pageContex 方便在 JSP 中直接寫 Java程式碼
application 兩個頁面互動時共享物件
JAVA 中的危險函式
getParameter() #獲取引數 getcookies() #直接獲取會話 getQueryString() #獲取SQL語句 getHeaders() #獲取HTTP請求頭 Runtime.exec() #執行系統命令 logger.info() #日誌輸出,可造成資訊洩露的風險
危險關鍵字:password,upcrVYYmZWgfload,download
名詞概念
servlet:Java Servlet是執行在Web伺服器或應用伺服器上的程式,Servlet是一種執行在web伺服器上的元件,負責連線客戶端請求和伺服器(或應用層)
Tomcat
- Tomcat作為Servlet容器,負責處理客戶端的請求(執行java程式),並把請求交給Servlet,並將Servlet的響應傳給客戶。
- Tomcat作為JSP容器,…
Servlet 和 JSP的區別
Servlet是在伺服器端執行的Java程式,由Servlet容器(其實就是伺服器) 負責執行Java程式。而JSP(Java Server Page)則是一個頁面, 由JSP容器負責執行。
- Servlet以Java程式為主, 輸出HTML程式碼時需要使用out.println函式,也就是說Java中內嵌HTML; 而JSP則以HTML頁面為主,可以直接插入Java程式碼, 即HTML中內嵌Java
- Jsp 就是在HTML中寫Java程式碼,servlet 就是在java程式碼中寫HTML
Tomcat 是容器,是中介軟體,是web應用伺服器。
Servlet 是元件
JSP 是動態網頁技術
WAR包:一個 Java專案都是以War包的形式釋出到中介軟體。能拿到WAR包在反編譯就能進行程式碼審計
總結
本篇文章就到這裡了,希望能夠給你帶來幫助,也希望您能夠多多關注我們的更多內容!