質問

私のセキュリティクラスの一環として、Ubuntuの安全性の低いバージョンで多くの脆弱性を活用する必要がありました。私はすべての課題を解決しましたが、誰かがいくつかの光を当てることができることを望んでいる1つの問題に出くわしました。

それぞれの課題は、セットGidバイナリであり、引き継がれたときに攻撃者に次のレベルの特権を与えます。そのレベルのグループに追加するために、本質的に実行したコマンドL33Tを実行します adduser <user> <group>.

私のエクスプロイトの1つで、私のシェルコードは単にexec L33tに電話をかけ、このメッセージを受け取りました:printfの不安定な依存関係は/usr/share/perl5/debian/addusercommon.pm line 64でsetgidを実行しています。

問題を回避するために、私は正常に機能する2本のラインボーンシェルを作成しました。

#!/bin/sh
l33t

不安定な依存関係の問題を見た理由を誰かが説明できますか?

役に立ちましたか?

解決

あなたがまだ知らないなら 汚染モード: :それにより、すべてのユーザー入力が「汚染」としてマークされ、「汚染された」値を出力することを拒否します(信頼できない入力を明示的に「塗装」しなければならないという意味)。

とにかく、64行目 AdduserCommon.pm です sprintf の中に dief 機能…だから私は何が起こっているのかと思う l33t 直接、 adduser スクリプトが何らかのエラーに遭遇し、その後、汚染エラーが発生します。 adduser そのエラーを報告しようとします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top