首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

使用 FreeBSD 捕獲 PPPoE 帳號密碼(僅供學習研究)

     編輯:Java 綜合教學

前言

有位朋友拿了一台無線路由器,請我協助找回 PPPoE 的用戶名與密碼。網路上相關教學較為零散,因此整理此文記錄完整流程,嚴禁用於非法用途。

一、安裝 mpd5

FreeBSD 下的 mpd5 是撥號領域的利器,可同時作為客戶端與伺服器端。透過 pkg 安裝:

pkg install mpd5

二、配置 mpd5 接收 PPPoE 撥號

複製範例配置並修改關鍵五行:

cp /usr/local/etc/mpd5/mpd5.conf.sample /usr/local/etc/mpd5/mpd5.conf

核心修改點:

  1. 設定預設段落載入 pppoe_server
  2. 移除 radius 相關設定以免報錯
  3. 將 pppoe service 設為 "*",確保客戶端封包能通過
  4. 指定監聽網卡介面(兩處皆需設定,如 em0)

關鍵片段:

default:
    load pppoe_server

pppoe_server:
    create bundle template B
    set ipcp ranges 192.168.0.1/32 127.0.0.2/32
    create link template common pppoe
    set link enable multilink
    set link action bundle B
    set link disable chap pap eap
    set link enable pap
    # load radius
    set pppoe service "*"
    create link template em0 common
    set link max-children 1000
    set pppoe iface em0
    set link enable incoming
注意: mpd.conf 要求除段落名外每行前需有空格,部落格編輯器可能吞掉前導空格,請參考系統自帶範例調整縮排。

三、啟動 mpd5 服務

/usr/local/etc/rc.d/mpd5 onestart

四、抓包分析帳密

使用 tcpdump 監聽 PPPoE 封包,過濾 pppoes 協議:

tcpdump -ani em0 pppoes

輸出中 PAP, Auth-Req 行即包含帳密,範例中用戶名 csh、密碼 123456:

18:09:08.946030 PPPoE [ses 0x4a] PAP, Auth-Req (0x01), id 1, Peer csh, Name 123456

五、重要提醒

  1. 切勿用於非法用途! 僅限自有設備或授權環境下測試。
  2. 本文配置範例因排版關係縮排可能遺失,實際部署請以 /usr/local/etc/mpd5/mpd5.conf.sample 為準。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved