> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/ja/ports-and-services/james-server-4555-119-110.md).

# James Server - 4555/119/110

NNTP、リモート管理、POP3メールボックスアクセス、パスワードリセットの悪用、認証情報発見をまたぐApache James列挙。

### ポート119 - NNTP

> ポート119はNetwork News Transfer Protocol（NNTP）サービスを使用しています。サーバーは、メールおよびニュースサーバーであるApache Jamesのインスタンスを実行しています。次のコマンドで接続します `netcat`、しかし関連情報は見つかりません。

```bash
nc 10.10.10.51 119
```

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-ac52aaefad480ecc1e2707fb767e5cbb60df7b7e%2Fimage%20(2585).png?alt=media" alt=""><figcaption></figcaption></figure>

### ポート4555 - リモート管理ツール

> リモート管理の文脈では、コントロールパネルにアクセスしたり、対象マシン上のリモートサービスとやり取りしたりするために悪用される可能性があります。開いているかどうか、またどのサービスをホストしているかを確認するためにスキャンすることが重要です。

Telnet経由でJamesの管理パネルに接続します：

```bash
telnet 10.10.10.51 4555
```

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-bd9b69cb11db8b4ba5cbde48f429f9937ce8bc64%2Fimage%20(2582).png?alt=media" alt=""><figcaption></figcaption></figure>

デフォルトの認証情報が見つかります：

* **ユーザー名** : root
* **パスワード** : root

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-69074b0e161c628ff9e3a8823ef1e0af04907555%2Fimage%20(2583).png?alt=media" alt=""><figcaption></figcaption></figure>

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-1518ab79ebe0f30c9b60d29a92fc0a92595946eb%2Fimage%20(2584).png?alt=media" alt=""><figcaption></figcaption></figure>

ログイン後、Jamesの管理パネルでは、次の `listusers` コマンドでユーザー列挙ができます。5人のユーザーが見つかります：

* `ユーザー: james`
* `ユーザー: thomas`
* `ユーザー: john`
* `ユーザー: mindy`
* `ユーザー: mailadmin`

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-15c171b11ef961402c79067a1813f6c62343f0be%2Fimage%20(2586).png?alt=media" alt=""><figcaption></figcaption></figure>

その `setpassword` コマンドでユーザーのパスワードを変更できるため、ポート110のPOP3経由でメールボックスにアクセスできます。各ユーザーのパスワードを変更します：

```ada
setpassword james james
setpassword thomas thomas
setpassword john john
setpassword mindy mindy
setpassword mailadmin mailadmin
```

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-fd03b9a00bf3d2978d4eafffbea83d2eb2f033c5%2Fimage%20(2587).png?alt=media" alt=""><figcaption></figcaption></figure>

### ポート110 - POP3

> ポート110は、次の用途で使用される標準ポートです **POP3** （Post Office Protocol version 3）。メールクライアントはこのプロトコルを使用してサーバーからメッセージを取得します。

Telnet経由でPOP3サービスに接続します：

<pre class="language-bash"><code class="lang-bash"><strong>telnet 10.10.10.51 110
</strong></code></pre>

次のコマンドでログインします：

```ada
USER <user>
PASS <password>
```

次のコマンドでメッセージを一覧表示します： `list` コマンド。

次のメールボックスにはメッセージがありません： `james` および `thomas` メールボックス。

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-c1d9940d1c339a1c5b9bc44b6b8a0c43d4c8b8c7%2Fimage%20(2588).png?alt=media" alt=""><figcaption></figcaption></figure>

しかし、 `john` メールボックスには、次のコマンドで取得できるメッセージがあります `retr 1`。メッセージには次のテキストが含まれています：

> John,
>
> Mindyがプログラムに参加することを許可されるまで、彼女のアクセスを制限できますか？ また、彼女がアカウントにログインできるよう、一時的なパスワードも送ってください。
>
> よろしくお願いします。
>
> 敬具、/ James

<figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-b8f6ae1ff1fd1cf1787c337a246d667f138b24b1%2Fimage%20(2589).png?alt=media" alt=""><figcaption></figcaption></figure>

これは、次のことを示唆しています： `mindy` ユーザーはメールボックス内に認証情報を持っています。次の情報が見つかります：

* **ユーザー名** : mindy
* **パスワード** : P\@55W0rd1!2@

<div data-full-width="true"><figure><img src="https://2001299964-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-b30fc925aed5ccf801ef0c46bc305b96ded344c3%2Fimage%20(2590).png?alt=media" alt=""><figcaption></figcaption></figure></div>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://hacking-notes.jord4n.pro/ja/ports-and-services/james-server-4555-119-110.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
