用戶權限分配
Linux中默認給予apache的是一個www-data賬戶

可以看到第一行為apache的主行程,以root權限進行,因為apache的web埠是80或者443,而在Linux中開啟小于1024的埠需要root權限,所以主行程必須以root權限運行,第二行起為apache子行程,執行用戶為www-data,是Ubuntu中運行web服務的默認用戶,權限較低,可以看到創建不了檔案


如果apache執行權限為高權限用戶
可以嘗試更改為低權限用戶,apache的運行用戶的配置資訊可以在/etc/apache2/apache2.conf檔案中看到,檔案提示設定這些選項需要去/etc/apache2/envvars設定

到/etc/apache2/envvars下將user和group設定為www-data

Windows中apache安裝后默認是administrator權限
如果使用此權限運行web服務一旦攻擊者拿下webshell就很容易控制整個服務器,所以需要給apache降權,步驟如下
1.創建一個普通用戶apache


2.添加到Guests用戶組

3.將apache目錄下的日志的可寫權限賦給Guests賬戶

4.設定apache服務屬性中的登陸選項卡,最后重啟服務

5.菜刀查看權限

目錄及檔案權限
Linux在默認情況下如果當前目錄不存在默認檔案(如index.html),會列出當前目錄

其權限配置在apache組態檔http.conf中,可以看到都額定/var/www/操作的有兩個選項
indexes:可以在該目錄中使用符號連接
FollowSymLinks:允許目錄瀏覽,當客戶僅指定要訪問的目錄,但沒有指定要訪問目錄下的哪個檔案,而且目錄下不存在默認檔案是,apache以超文本形式回傳目錄中的檔案和子目錄串列(虛擬目錄不會出現在目錄串列中),
indexes決定目錄可以被列出,從漏洞角度上講也就是目錄遍歷漏洞

設定選項如下,重啟服務后發現目錄不在列出


另外也可以通過chmod命令進行權限控制
chmod o-r xxx.txt 將xxx.txt檔案讀權限去掉
Windows同樣可以使用上述兩種方法進行權限控制
法一:修改httpd.conf組態檔的方法與Linux下是一樣的
法二:修改某檔案的權限(apache已經添加到Guests用戶組)

同理可以設定檔案或目錄的寫、執行權限,尤其是一些檔案上傳目錄一定要設定為不可執行,可以有效的被getshell
錯誤重定向
錯誤重定向是指通過在web程式出錯令其跳轉到指定的顯示界面,首先可以通過設定.htaccess檔案達到目的,但是Windows中正常情況下無法直接創建.xxx的檔案,所有要使用DOS命令,生成.htaccess檔案,在.htaccess檔案中添加:ErrorDocument 404 /404.html,設定404錯誤重定向


同時創建404頁面


隨機訪問不存在的檔案,自動跳轉到404.html

但這里也容易造成一個隱藏攻擊點,因為一旦被被攻擊者拿到webshell,發現并控制了.htaccess,攻擊者可以通過修改.htaccess將.jpg檔案設定為可被當作php執行的檔案,后期排查留下隱患,
通過修改httpd.conf檔案也可以達到跳轉的目的

RewriteEngine On:開啟跳轉
RewriteRule "tttt\.html$" "404.html":第一個引數是一個正則,第二個引數使要跳轉到的相對地址;也就是說當符合正則時進行跳轉,比如對于本條正則當訪問tttt.html時會跳轉到404.html界面,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/27527.html
標籤:其他
上一篇:才開的實體埠過半小左右就關閉了,IP正常的是怎么回事呀?
下一篇:## 100個網路基礎知識##
