ちょうど質問をやり直すようにアドバイスを受けました。https://security.stackexchange.com/questions/72795/command-execution-dvwa-creating-file-in-tmpここで。
私はCentOS 7を使用しており、コマンド実行攻撃を理解しようとしています。ファイル生成操作を説明するチュートリアルが見つかりました。ただ使用
cat /etc/passwd | tee -a /tmp/passwd
作成する必要があります/etc/passwd
。はい(cat /tmp/passwd
同じ場所で実行すると、前のコマンドの結果が正確に予想されたのと同じでした)。ただし、/tmp/passwd
(サイトではなく)サーバー端末でこのコマンドを実行しようとすると、何も起こりません。
ApacheとPHPを設定していません。
行方不明者をどこで探すべきですか/tmp/passwd
?
@terdonが尋ねたように:
mount | grep tmp
次を返します。
devtmpfs on /dev type devtmpfs (rw,nosuid,size=1966708k,nr_inodes=491677,mode=755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /sys/fs/cgroup type tmpfs (rw,nosuid,nodev,noexec,mode=755)
tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
/dev/sda7 on /tmp type xfs (rw,relatime,attr2,inode64,noquota)
/dev/sda7 on /var/tmp type xfs (rw,relatime,attr2,inode64,noquota)
答え1
これは、PrivateTmpというsystemdの機能に由来します。
/var/tmp/systemd-private-*
ファイルのオプションを設定するサービスです/var/tmp
。PrivateTmp
.service
/tmp/systemd-private-*
サービス用です/tmp
。
httpd
何かを書けばに/tmp
いるはずです/tmp/systemd-private-*-httpd.service-*
。
/tmp
/var/tmp
違いは次のとおりです。
/ var / tmpディレクトリは、システムの再起動間に一時ファイルまたはディレクトリを保存する必要があるプログラムで使用されます。したがって、/ var / tmpに保存されているデータは、/ tmpに保存されているデータよりも耐久性があります。
/ var / tmpのファイルとディレクトリは、システムの起動中に削除しないでください。 /var/tmpに保存されているデータは通常サイトごとに削除されますが、/tmpよりも削除頻度を減らすことをお勧めします。
答え2
Fedora 20で探しているディレクトリは、/var/tmp/systemd-private-${FOO}
これらのフォルダの1つ(複数)にあります。 RHEL 7またはCentOS 7システムではこれを確認できませんでしたが、同じ/var/tmp/systemd-private-${FOO}
領域にあると強く疑っています。
答え3
私のアプローチは、実行中のApacheプロセスのPIDを見つけることでした。
ps ax | fgrep http
合理的に見えるいくつかのPID番号を左の列で見てください。その後、/ tmpディレクトリは/ procのPIDパスを介してアクセスされます。これは少し見苦しいですが、このシステムバージョンを台無しにするための新しい、興味深い方法を見つけた人を見つける時間を節約できます。
ls -l /proc/12345/root/tmp
httpd プロセスで表示できるファイルです。