2019-01-30

合法練習滲透測試的網站

進攻即是最好的防禦,這句話同樣適用於信息安全的世界。這裏羅列了很多合法的來練習黑客技術的網站,不管你是一名開發人員、安全工程師、代碼審計師、滲透測試人員,通過不斷的練習才能讓你成為一個優秀安全研究人員。以下網站希望能給各位安全小夥伴帶來幫助!若有其他的補充和推薦,歡迎給留言(排名不分先後)

國外

  1. bWAPP 免費和開源的web應用進程安全項目。它有助於安全愛好者及研究人員發現和防止web漏洞。

  2. Damn Vulnerable iOS App (DVIA) DVIA是一個iOS安全的應用。它的主要目標給移動安全愛好者學習iOS的滲透測試技巧提供一個合法的平台。APP涵蓋了所有常見的iOS安全漏洞,它免費並開放源碼,漏洞測試和解決方案覆蓋到iOS 10版本。信息安全工程师@prateekg147设计并开发。Getting Started

  3. Damn Vulnerable Web Application (DVWA) 基於 php 和 mysql 的虛擬 Web 應用,“內置”常見的 Web 漏洞,如 SQL 注入、xss 之類,可以搭建在自己的電腦上

  4. Game of Hacks 基於遊戲的方式來測試你的安全技術,每個任務題目提供了大量的代碼,其中可能有也可能沒有安全漏洞!

  5. Google Gruyere 一個看起來很low的網址,但充滿了漏洞,目的是為了幫助那些剛開始學習應用進程安全性的人員。

  6. HackThis!! 旨在教你如何破解、轉儲和塗改,以及保護網站的黑客技巧,提供超過50種不同的難度水平。

  7. Hack This Site 是一個合法和安全的測試黑客技能的網站,幷包含黑客資訊. 文章、論壇和教程,旨在幫助你學習黑客技術。

  8. Hellbound Hackers 提供了各種各樣的安全實踐方法和挑戰,目的是教你如何識別攻擊和代碼的補丁建議。主題包含應用進程加密和破解,社工和rooting。社區有接近10萬的註冊會員,也是最大的一個黑客社區之一。

  9. McAfee HacMe Sites 邁克菲提供的各類黑客及安全測試工具

  10. Mutillidae 是一個免費,開源的Web應用進程,提供專門被允許的安全測試和入侵的Web應用進程。其中包含了豐富的滲透測試項目,如SQL注入、跨站腳本、clickjacking、本地文檔包含、遠程代碼執行等.

  11. OverTheWire 基於遊戲的讓你學習安全技術和概念的黑客網站

  12. Peruggia 一個提供安全、合法攻擊的黑客網站

  13. Root Me 通過超過200名黑客的挑戰和50個虛擬環境來提高你黑客技巧和網絡安全知識的網站

  14. Try2Hack 最古老的黑客網站之一,提供多種安全挑戰。

  15. Vicnum OWASP 項目之一,簡單框架,針對不同的需求,並基於遊戲的方式來引導安全開發者學習安全技術。

  16. WebGoat 最受歡迎的OWASP項目,提供了一個真實的安全教學環境,指導用户設計複雜的應用進程安全問題

  17. Test ASP acunetix 提供的測試網站,使用 ASP

  18. Test ASP.Net acunetix 提供的測試網站

  19. Test PHP acunetix 提供的測試網站,使用 asp.net webform 開發

  20. Altoro Mutual

其它

  1. i春秋 國內比較好的安全知識在線學習平台,把複雜的操作系統、工具和網絡環境完整的在網頁進行重現,為學習者提供完全貼近實際環境的實驗平台,

  2. XCTF_OJ 練習平台 XCTF-OJ (X Capture The Flag Online Judge)是由XCTF組委會組織開發並面向XCTF聯賽參賽者提供的網絡安全技術對抗賽練習平台。XCTF-OJ平台將彙集國內外CTF網絡安全競賽的真題題庫,並支持對部分可獲取在線題目交互環境的重現恢復,XCTF聯賽後續賽事在賽後也會把賽題離線文檔和在線交互環境彙總至XCTF-OJ平台,形成目前全球CTF社區唯一一個提供賽題重現覆盤練習環境的站點資源。

  3. 網絡信息安全攻防學習平台 提供基礎知識考查、漏洞實戰演練、教程等資料。實戰演練以 Web 題為主,包含基礎關、腳本關、注入關、上傳關、解密關、綜合關等。

參考來源:

http://list.ly/list/euz-15-vulnerable-sites-to-legally-practice-your-hacking-skills-2016-update http://www.freebuf.com/sectool/4708.html https://www.zhihu.com/question/24740239 https://hk.saowen.com/a/0cefffc20499a78b147ab04a5689ac0e1b6acbb4abecf236e018c36fe232ba0d https://www.freebuf.com/special/123961.html

2019-01-28

Python Import the class within the same directory or sub directory

引用同一資料夾中的類別

假設有已有如下的資料結構,在 myfolder 中有 Order, Product, User, Manager 四個 class,要引用到 main.py 中使用。

myfolder
+-- main.py
+-- subdir
|   +-- order.py
|   +-- product.py
+-- user.py
+-- manager.py

Python 2

建立一個名為 __init__.py 的空檔案,放在同一個資料夾中

在 main.py 中

from user import User
from manager import Manager

資料夾範例:

myfolder
+-- main.py
+-- subdir
|   +-- order.py
|   +-- product.py
+-- __init__.py
+-- user.py
+-- manager.py

如果是要引用子目錄中的類別,則是在子目錄中建立 __init__.py

from subdir.order import Order
from subdir.product import Product

子資料夾範例:

myfolder
+-- main.py
+-- subdir
|   +-- __init__.py
|   +-- order.py
|   +-- product.py
+-- user.py
+-- manager.py

Python 3

在同一目錄下引用直接使用 .user,參考如下:

在 main.py 中

from .user import User
from .manager import Manager

資料夾範例:

myfolder
+-- main.py
+-- subdir
|   +-- order.py
|   +-- product.py
+-- __init__.py
+-- user.py
+-- manager.py

2019-01-21

Kali Linux 新增使用者帳號並授與 sudo 權限

在網路上查閱很多 Kali 的相關文章,大多都是直接使用 root 帳號,在使用 Linux 時通常會建議不要直接使用 root 帳號進行一般事務的管理操作。所以查了如何在 kali 加入新的使用者帳號,操作指令可以參考 Degain 或是 Ubuntu 的文章。

以下 username 都要代換為要新增的帳號

新增帳號

  1. 開啟 Terminal ,使用 Ctrl+Alt+T,或是點擊左側的 Terminal 圖示,並登入 root 帳號

  2. 加入新使用者帳號:

    useradd -m username

    -m 建立帳號的 home 目錄,預設路徑是 /home/username

  3. 建立帳號的密碼:

    passwd username
  4. 將帳號加到 sudo 群組,帳號才能使用 sudo 命令安裝程式:

    usermod -a -G sudo username

    -a 加入 -G 指定要加入的群組名稱

  5. 給帳號指定預設的 shell:

    chsh -s /bin/bash username

    -s 指定登入的 shell

移除帳號

  1. 將帳號從 sudo 群組移除:

    方法1. 使用 deluser:

    sudo deluser username sudo

    方法2. 使用 gpasswd:

    sudo gpasswd -d username sudo
  2. 將帳號從系統移除:

    sudo userdel -r username

    -r 移除帳號的 home 目錄和郵件

參考:

在 Kali Linux 安裝 Visual Studio Code

Kali 安裝 Visual Studio Code

因為 Kali 是以 Debian 為基地的發佈版,所以參考 Debian 或是 Ubuntu 的安裝方式。


# Download the Microsoft GPG key, and convert it from OpenPGP ASCII 
# armor format to GnuPG format
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg

# Move the file into your apt trusted keys directory (requires root)
mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg

# Add the VS Code Repository
echo "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list

# Update and install Visual Studio Code 
apt update && apt install code

參考

  1. Visual Studio Code on Linux

2019-01-18

kali 建立應用程式捷徑 (Desktop Entry)

kali linux 是使用 Gnome 桌面環境,如果要自訂應用程式捷徑和分類可以參考 Desktop Entry Specification

這裡的情境是從網路下載了 burp suite 要直接建立捷徑執行。假設已將程式下載解壓,並儲存在 /opt/burpsuite 資料夾。

root@kali:/opt/burpsuite# ls -l
-rw------- 1 root root     7340 Jan 17 22:20 burpsuite.png
-rwxrw-rw- 1 root root 28215285 Aug 12 19:55 burpsuite_v1.7.37.jar

資料夾

/etc/xdg/menus                 # 主選單設定
/etc/xdg/menus/applications-merged/kali-applications.menu   # kali 預設選單層級和 Category 名稱設定
/usr/share/applications        # 將 DesktopEntry 檔案放在這資料夾內(副檔名 .desktop)
/usr/share/desktop-directories # 應用程式分類資料夾設定(副檔名 .directory)

執行 burp suite

用 java 執行 burpsuite 確認一下能正常啟動應用程式

root@kali:/opt/burpsuite# java -jar burpsuite_v1.7.37.jar

建立程式捷徑

  1. 在 /usr/share/applications/ 建立 burpsuite.desktop,內容如下:
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon=/opt/burpsuite/burpsuite.png
Exec=sh -c java -jar burpsuite_v1.7.37.jar
Name=Burp Suite 1.7.37
Path=/opt/burpsuite
Categories=03-webapp-analysis;03-06-web-application-proxies;

  1. 設定為可執行
root@kali:/usr/share/applications# chmod a+x burpsuite.desktop

將 Burp Suite 捷徑加到左側 Menu 中

  1. 展開 Applications 選單

  1. 拖放至左側選單中

2019-01-21 補充

當另一個帳號登入時應用程式的 icon 沒顯示,因為 icon 圖示沒有權限,所以再加設權限就可以了

chmod a+rw /opt/burpsuite/burpsuite.png

參考連結

kali linux 更換 jdk

使用 kali linux 的 brup suite 會跳出 JRE 版本 10.0.2 沒有完全測試過,可能會發生問題的訊息。

> Your JRE appears to be version 10.0.2 from Oracle Corporation Burp has not been fully tested on this platform and you may experience problems.

環境

  • Linux kali 4.17.0-kali1-amd64 #1 SMP Debian 4.17.8-1kali1 (2018-07-24) x86_64 GNU/Linux
  • Burp Suite Community Edition 1.7.35

查看版本的參考文章

JDK 更換或安裝

  1. 查看和更改 kali linux 中的 JDK
update-alternatives --config java
update-alternatives --config javac
  1. 如果要使用的JDK 不存在,安裝 JDK
update-alternatives --install /usr/bin/java java /opt/jdk-9.0.1/bin/java 300
update-alternatives --install /usr/bin/javac javac /opt/jdk-9.0.1/bin/javac 300

注意:/opt/jdk-9.0.1是自己安装的路径。

  1. 安裝後再設定成要使用的版本
update-alternatives --config java
update-alternatives --config javac

選擇編號,按 Enter

  1. 檢查 java 版本
java -version
javac -version

kali 查看版本

kali 查看版本

  • 查看內核版本
uname -a
  • 查看發行版本
lsb_release -a

執行結果

root@kali:~# uname -a
Linux kali 4.17.0-kali1-amd64 #1 SMP Debian 4.17.8-1kali1 (2018-07-24) x86_64 GNU/Linux
root@kali:~# lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description: Kali GNU/Linux Rolling
Release: kali-rolling
Codename: kali-rolling