Ⅰ 常見WEB攻擊之命令注入
即 Command Injection。是指通過提交惡意構造的參數破壞命令語句結構,從而達到執行惡意命令的目的。
在Web應用中,有時候會用到一些命令執行的函數,如php中system、exec、shell_exec等,當對用戶輸入的命令沒有進行限制或者過濾不嚴導致用戶可以執行任意命令時,就會造成命令執行漏洞。
黑客將構造好的命令發送給web伺服器,伺服器根據拼接命令執行注入的命令,最後講結果顯示給黑客。
以DVWA為例,下面使用ping命令測試IP,正常輸入一個IP或者域名會返回一個正常的返回結果。
當輸入惡意構造的語句 www..com && netstat -an,會把後面的語句也給執行了:
執行結果:
PHP的常見命令執行函數:
system(),exec(),shell_exec(),passthru()
1、system()
system — 執行外部程序,並且顯示輸出
常規用法:
使用PHP執行:
php test1.php www..com
exec — 執行一個外部程序
3、shell_exec()
shell_exec — 通過 shell 環境執行命令,並且將完整的輸出以字元串的方式返回。
4、passthru()
passthru() 函數與 exec() 函數類似,執行外部程序並且顯示原始輸出。
Windows:
用^轉義<
如果加上單引號會寫不進去,如果加雙引號會把雙引號一起寫進去,所以要用^轉義<
linux:
linux下需要用來轉義<,不過很多php都默認開啟gpc,可以先用16進制轉換一句話再用xxd命令把16進制還原.
<?php eval($_POST[pass]);>
轉換為16進制:
由於我用的是Linux,所以使用payload寫入一句話:
寫入成功:
1、採用白名單,或使用正則表達式進行過濾。
2、不要讓用戶可以直接控制eval()、system、exec、shell_exec等函數的參數。
3、在進入執行命令函數和方法前,對變數進行過濾,對敏感字元進行轉義。
Ⅱ Web應用常見的安全漏洞有哪些
Web應用常見的安全漏洞:
1、SQL注入
注入是一個安全漏洞,允許攻擊者通過操縱用戶提供的數據來更改後端SQL語句。當用戶輸入作為命令或查詢的一部分被發送到解釋器並且欺騙解釋器執行非預期的命令並且允許訪問未授權的數據時,發生注入。
2、跨站腳本攻擊 (XSS)
XSS漏洞針對嵌入在客戶端(即用戶瀏覽器而不是伺服器端)的頁面中嵌入的腳本。當應用程序獲取不受信任的數據並將其發送到Web瀏覽器而未經適當驗證時,可能會出現這些缺陷。
3、跨站點請求偽造
CSRF攻擊是指惡意網站,電子郵件或程序導致用戶的瀏覽器在用戶當前已對其進行身份驗證的受信任站點上執行不需要的操作時發生的攻擊。
4、無法限制URL訪問
Web應用程序在呈現受保護的鏈接和按鈕之前檢查URL訪問許可權 每次訪問這些頁面時,應用程序都需要執行類似的訪問控制檢查。通過智能猜測,攻擊者可以訪問許可權頁面。攻擊者可以訪問敏感頁面,調用函數和查看機密信息。
5、不安全的加密存儲
不安全的加密存儲是一種常見的漏洞,在敏感數據未安全存儲時存在。用戶憑據,配置文件信息,健康詳細信息,信用卡信息等屬於網站上的敏感數據信息。
(2)程序員web攻擊方法擴展閱讀
web應用漏洞發生的市場背景:
由於Web伺服器提供了幾種不同的方式將請求轉發給應用伺服器,並將修改過的或新的網頁發回給最終用戶,這使得非法闖入網路變得更加容易。
許多程序員不知道如何開發安全的應用程序。他們的經驗也許是開發獨立應用程序或Intranet Web應用程序,這些應用程序沒有考慮到在安全缺陷被利用時可能會出現災難性後果。
許多Web應用程序容易受到通過伺服器、應用程序和內部已開發的代碼進行的攻擊。這些攻擊行動直接通過了周邊防火牆安全措施,因為埠80或443(SSL,安全套接字協議層)必須開放,以便讓應用程序正常運行。
Ⅲ 黑客攻擊主要有哪些手段
黑客攻擊手段:
1、漏洞掃描器
漏洞掃描器是用來快速檢查已知弱點的工具,這就方便黑客利用它們繞開訪問計算機的指定埠,即使有防火牆,也能讓黑客輕易篡改系統程序或服務,讓惡意攻擊有機可乘。
2. 逆向工程
逆向工程是很可怕的,黑客可以利用逆向工程,嘗試手動查找漏洞,然後對漏洞進行測試,有時會在未提供代碼的情況下對軟體進行逆向工程。
3. 蠻力攻擊
這種手段可以用於密碼猜測,速度非常快。但如果面對的是很長的密碼,蠻力搜索就需要更長的時間,這時候黑客會使用字典攻擊的方法。
4. 密碼破解
黑客會反復猜測嘗試,手工破解常見密碼,並反復嘗試使用「字典」或帶有許多密碼的文本文件中的密碼,從而可以竊取隱私數據。
5. 數據包嗅探器
數據包嗅探器是捕獲的數據分組,可以被用於捕捉密碼和其他應用程序的數據,再傳輸到網路上,造成數據泄露。
黑客作用原理
1、收集網路系統中的信息
信息的收集並不對目標產生危害,只是為進一步的入侵提供有用信息。黑客可能會利用下列的公開協議或工具,收集駐留在網路系統中的各個主機系統的相關信息。
2、探測目標網路系統的安全漏洞
在收集到一些准備要攻擊目標的信息後,黑客們會探測目標網路上的每台主機,來尋求系統內部的安全漏洞。
3、建立模擬環境,進行模擬攻擊
根據前面兩小點所得的信息,建立一個類似攻擊對象的模擬環境,然後對此模擬目標進行一系列的攻擊。在此期間,通過檢查被攻擊方的日誌,觀察檢測工具對攻擊的反應,可以進一步了解在攻擊過程中留下的「痕跡」及被攻擊方的狀態,以此來制定一個較為周密的攻擊策略。
4、具體實施網路攻擊
入侵者根據前幾步所獲得的信息,同時結合自身的水平及經驗總結出相應的攻擊方法,在進行模擬攻擊的實踐後,將等待時機,以備實施真正的網路攻擊。