RTIS week2 環境變數溢位

2021-08-15 04:07:44 字數 1459 閱讀 1577

環境變數是在作業系統中乙個具有特定名字的物件,它包含了乙個或者多個應用程式所將使用到的資訊。

一、按照生命週期來分,linux環境變數可以分為兩類:

1、永久的:需要使用者修改相關的配置檔案,變數永久生效。

2、臨時的:使用者利用export命令,在當前終端下宣告環境變數,關閉shell終端失效。

二、按照作用域來分,linux環境變數可以分為:

1、系統環境變數:系統環境變數對該系統中所有使用者都有效。(在/.bash_profile中定義)

2、使用者環境變數:這種型別的環境變數只對特定的使用者有效。(在/etc/profile中定義)

path變數的宣告

path=$paht

:1>:2>:3>:--------

:<

path n >

export path

關於環境變數的詳細分析

在主函式中定義了modified(int)、buffer[64]、variable(char *)三個變數,variable獲取指向heetian環境變數的指標,判斷非空(成功獲取)後,設定modified為0,將heetian環境變數的值賦給buffer。由於strcpy可引發緩衝區溢位,這道題可以使用buffer修改modified的值達到繞過驗證的目的。

}(這段**裡我有乙個不太理解的地方:為什麼需要根據程式名調整ptr的值,有知道的同學歡迎指導)

編譯程式

執行獲取username的位址

修改path獲得shell

iTerm2環境變數失效

新安裝的iterm2,然後自己 bash profile都失效了!系統啟動第一步載入 etc profile 系統啟動第二步載入 etc environment 使用者登入,僅bash模式載入 bash profile 問題就在這兒,zsh模式的shell根本不會載入 bash profile檔案中...

linux學習(2) 環境變數和管道

登入系統後,shell會有乙個初始化的過程,用來設定環境變數。這個階段,shell會讀取 etc profile 和 profile 兩個檔案,這兩個檔案儲存的變數為環境變數,過程如下 讀取完上面兩個檔案,shell就會出現 命令提示符 出現這個提示符,就可以輸入命令並呼叫相應的程式了。注意 上面是...

LINUX環境(二) 環境變數

環境變數 getenv,putenv,setenv,unsetenv environ 環境變數 getenv,putenv,setenv,unsetenv 環境變數 getenv 取得環境變數內容 相關函式 putenv setenv unsetenv 表頭檔案 include 定義函式 char ...