Posts Tagged ‘ htaccess

如何自動將網站的 http:// 網址轉址為 https://

弱點掃瞄

弱點: Site does not enforce HTTPS

The site responds to HTTP requests without ultimately redirecting the browser to a secure version of the page. Since the site allows plaintext traffic, a man-in-the-middle attacker is able to read and modify any information passed between the site and the user. There are a variety of situations in which an attacker can intercept plaintext traffic in a man-in-the-middle position, including but not limited to:

  1. Open Wi-Fi Hotspots
  2. WPA/WPA2 encrypted hot-spots where the attacker connected before the victim
  3. Malicious Wi-Fi access points
  4. Compromised switches and routers
  5. ARP poisoning on the same wired network

It's important to remember that in many of the above situations, an attacker can not only read traffic, but also actively modify the traffic. Even if a site that does not contain sensitive information, an attacker can still inject malicious content to a user’s browser.

  • Severity: High
  • Risk: Site does not enforce the use of HTTPS encryption, leaving the user vulnerable to man-in-the-middle attackers (who can falsify data and inject malicious code).
  • Recommendation: Any site served to a user (possibly at the end of a redirect chain) should be served over HTTPS.

Read more

使用 .htaccess 簡單防護 WordPress 的管理程式

本站曾用過 Limit Login Attempts 這個 WordPress 的外掛程式,用以防止被暴力破解登入密碼。當有人一直以錯誤的密碼進行登入時,就會對其 IP 進行幾個小時的封鎖,然後 mail 通知你又有什麼 IP 被封鎖了,效果其實也還不錯。

不過其實只要用「.htaccess 的權限認證方式」,就可以針對 wordpress 的 wp-login.php 這個單一檔案做防護,也可以達到很好的效果。

.htaccess 認證

首先找一個安全的地方放置 .htusers 這個檔案。所謂的「安全」,是指至少不要在網頁可以被下載到的路徑.htusers 的設定方式請參考本站另一篇文章:

密碼請不要用跟 WordPress 原本的登入密碼一樣。

編輯 wordpress 目錄下的 .htaccess,在檔案最後如入:

AuthType Basic
AuthName "Restricted Area"
AuthUserFile "/path/to/.htusers"
<Files wp-login.php>
require valid-user
</Files>

如果你想進一步針對整個 wp-admin 目錄做防護,則進到 wordpress 下的 wp-admin 目錄,新增或編輯 .htaccess,一樣在檔案最後如入:

AuthType Basic
AuthName "Restricted Area"
AuthUserFile "/path/to/.htusers"
require valid-user

參考網頁

WordPress 的錯誤訊息: You don’t have permission to access post.php ...

如果你在上傳圖片時,出現:

 Http Error

或是發表文章時,出現

You don’t have permission to access /wordpress/wp-admin/post.php on this server.

這是 Apache 的 mod_security 造成之錯誤,這時候你可以在 wp-admin 的目錄下新增 .htaccess 檔案,內容如下:

<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>

這樣應該就可以輕鬆解決了。

參考網頁

  1. 窄多之Blog: PHP post error: Forbidden - You don't have permission to access
  2. Hongkiat: WordPress 2.5 Image Upload Error [Wordpress Fix]

使用 .htaccess 自訂「404 找不到網頁」的頁面

一般我們租用的虛擬主機無法讓我們修改 httpd.conf,所以只能透過使用 .htaccess 來自訂「404 找不到網頁」的頁面。

Read more

[PHP]Simple Filelist 簡易檔案列表程式 *

檔案下載

  • 名  稱: Simple Filelist
  • 版  本: 1.1
  • 檔案大小: 3 KB
  • 語言介面: 英文版
  • 版本性質: Freeware
  • 釋出日期: 2006/11/20
  • 作業平台: Linux
  • 原創網站: Vixual
  • 檔案下載:

一般網站基於安全性及隱私權…等的原因,管理者通常會將網站上的目錄瀏覽功能(Indexes)給關閉,讓訪客無法直接看到網站上放了些什麼檔案。

但人性總是予盾的,關閉了的功能,在某些時候又會想要啟用,因為人們總是在失去的時候才感到後悔莫及...(Sorry,離題了)。因此,我就寫了這個簡單的 PHP 小程式,當我們需要在特定目錄啟用瀏覽的功能時 ,除了請管理者幫忙,或者自己修改「.htaccess」之外,只要有這個小程式就可以解決問題了。
Read more

[轉載]利用 google 半秒破 500 網

轉載自: 黑客基地


其實 google 搜尋器變了駭客工具也不是新聞,老手早亦用到,新手的也可來試試。

只要將以下字串作搜尋的話,你都得到很多密碼,當然若要得心應手便需要更多研究及借助其他軟件,但初步先懂得去找。

inurl

「inurl」是駭客重要的搜尋方法,可搜到網址包括的關鍵字,例如輸入「allinurl:login password」作搜尋,便會很易找到有 login 和 password 的網頁。

filetype

「filetype」是駭客專用語法,例如想找 mdb 的資料庫檔案,可用「password filetype:mdb」作搜尋,便會找到密碼文件,進階用法可配合 inurl: 使用,例如 girl filetype:jpg site:com 便可搜到所有 .com 網站,而檔案為 girl.jpg 或網頁內容有 girl 字串的網頁。

Index of /admin

Index of /admin」搜到的結果大多數是容許使用 index browsing 的網站,隨便按下一個連結便看到網站的資料夾和檔案分佈。

Read more

[轉載]apache 部份參數說明

轉載自: 小紅帽技術論壇


Part I

AllowOverride 的屬性功能

AllowOverride Limit 允許覆寫原連結屬性的範圍
AllowOverride Authconfig 可做密碼設定: 如: 藏密
AllowOverride Options 可將該目錄之 Options 功能覆寫
AllowOverride FileInfo 可將該目錄之任何文件型態覆寫, 如: DefaultType, ErrorType
AllowOverride Indexs 可將該目錄之顯示列印功能覆寫, 如: AddIcon, HeaderName, ReadName

Options 的屬性功能

Indexs 當無 index.html 可用列印目錄方式顯示, 如: center3 homepage 若用 -Indexs 則看不見 listing
FollowSymLinks 加一屬性如 +FollowSymLinks 可允許使用 symbol link 時, 依舊可瀏覽
ExecCGI 當為 +ExecCGI 可執行 CGI SCRIPT
Includes 可執行 Server site include, 若為 +Includes
IncludesNOEXEC 可執行 Server site include, 若為 +Includes, 但不可執行 CGI
None 沒有任何功能可用
All 均可
總之, 以 +, - 符號可加或刪減其功能, 若未給符號, 則只有初步功能

Read more

.htaccess 簡易的網頁帳號認證

.htaccess 讓你不用寫程式,就可以用最簡單的方式做出「網頁登入」的功能,限制哪些用戶能進到網頁的某一層目錄。

建立用戶驗證資料

建立用戶驗證檔

建立用戶驗證檔,並新增一組帳號及密碼:

htpasswd -c /path/to/.htusers UserName1

這裡所產生的 .htusers 是一個文字檔,裡面會有用戶名稱及編碼過的密碼。第一次建立檔案時,必須加 -c 參數。同時,請找一個安全的地方放置 .htusers 這個檔案,所謂的「安全」是指至少不要在公開網頁可以被下載到的路徑,例如放在 public_html 的上一層。

繼續增加第二組帳號及密碼到驗證檔時,就不用加 -c 參數:

htpasswd /path/to/.htusers UserName2

建立群組資料檔

如果用戶比較多,你可能會想要用群組的方式來做管理。群組資料檔的目的是要將多個用戶設為一個群組,請新增或編輯 /path/to/.htgroups,依需求增加類似如下的設定:

Group1:UserName1 UserName2

代表 Group1 包含 UserName1UserName2 這兩個用戶。

驗證登入

在欲執行用戶驗證的網頁目錄下,建立一個 .htaccess 檔案,驗證的方式可針對用戶或群組,差別在於 require 這個參數。

針對用戶:

AuthName "Restricted Area" # 名稱必須用英文
AuthType Basic
AuthUserFile /path/to/.htusers
require user UserName1 # 僅針對特定用戶,以空白分隔多個用戶

上述的最後一行是只有 UserName1 允許進入,你也可以改成:

require valid-user # 針對全部用戶

表示針對 .htusers 裡的所有用戶。

針對群組:

AuthName "Restricted Area" # 名稱必須用英文
AuthType Basic
AuthUserFile /path/to/.htusers
AuthGroupFile /path/to/.htgroups
require group Group1 # 僅針對特定群組的用戶,以空白分隔多個群組

表示針對 .htgroups 裡,歸屬於 Group1 下的用戶。

針對特定檔案:

若你只想針對特定檔案做保護,那可以與 <Files>~</Files> 一起使用:

<Files FileName>
     require valid-user
</Files>

<Files>~</Files> 一次只能填寫一個檔案,但支援正規表示式。以下是使用正規表示式限制圖檔存取的範例:

<Files ~ "\.(gif|jpe?g|png)$">
     require valid-user
</Files>

或是:

<FilesMatch "\.(gif|jpe?g|png)$">
     require valid-user
</FilesMatch>

設定好之後,當用戶要存取該目錄 (或檔案),就會跳出叫你登入的對話框:


另外,你也可以在網址中直接輸入你的帳號、密碼,格式:

 http://UserName:Password@www.example.com/directory/

問題排除

如果在設定 htaccess 認證方式之後,在進入網頁時,仍然沒有跳出驗證的對話框,則請編輯 /etc/httpd/conf/httpd.conf,搜尋相關的「AllowOverride」設定,改成:

AllowOverride All

安全性問題

雖然用戶儲存在 Server 端的密碼有經過加密,但因為是採用 Basic 方式驗證,當要存取網頁時,用戶輸入的帳號與密碼僅是以 Base64 編碼,包裹在 Headers 裡進行傳輸,有機會被竊聽之後解碼、盜用! 網站必須導入 SSL 才能完全在傳輸的過程中加密。

參考網頁

return top