Skip to content

Zeroplex 生活隨筆

軟體開發、伺服器和生活瑣事

小 縮小字型大小。 中 重設字型大小。 大 放大字型大小。

駭客軍團之 shebang

Posted on 2021 年 9 月 27 日2021 年 9 月 27 日 By 日落 在〈駭客軍團之 shebang〉中尚無留言

在駭客軍團的第 5 集約 39 分附近,因為失去「黑暗軍團」的幫忙,駭客想要馬上執行惡意程式來破壞「鋼山」公司的主機,如果有注意到的話,終端機的指令大致如下:

$ cd /opt/2/task/22/fdinfo/fsociety/hscripts
$ ./fuxsocy

影片中直接使用 ./ 來執行特定指令或 script,但並沒有特別指定要用 shell 或是要用 python?那這樣的話,電腦怎麼知道是執行檔可以直接載入記憶體中執行?或是否需要其他直譯器來執行?

Linux 和 Unix 在設計時有想到這個問題,目前大多數的解決方法,就是在檔案的第一行最前面加上 #! 符號作為標示,在標示後面跟著直譯器的絕對路徑,這樣就可以知道開發者需要使用哪個直譯器來跑這個 script。這個作法後來被稱為「shebang」。

More “駭客軍團之 shebang” »

Tags:Bash, Linux

駭客軍團之電腦監視工具

Posted on 2021 年 9 月 25 日2021 年 9 月 27 日 By 日落 在〈駭客軍團之電腦監視工具〉中尚無留言

駭客軍團中的主角 Elliot 的電腦螢幕上,有個綠色的視窗,一直有文字換來換去。那個工具叫做 htop,主要用來顯示 CPU、記憶體、程序 (proccess) 當下的狀況。Linux 中有不少監視工具可以在 console 底下運作,除了 htop 以外還有專門顯示磁碟讀寫狀態、網路使用狀態、和 open port 狀態的工具。

htop

先來介紹 htop。這個工具可以顯示電腦當下 CPU 使用量、memory 使用量,也可以列出目前吃 CPU / memory 最兇的 process。

圖一:htop 的執行畫面 (大圖),設置可以選擇 proccess 排序方式

htop 執行時,可以按下 h 來取得操作說明;使用方向鍵可以 highlight 特定的 process 進行分析和操作;按下 F6 可以選擇 process 要依照 CPU 使用量、記憶體使用量等來排序。

與 htop 類似的工具還有 top、atop、vtop、glances,而我最近想嘗試好用、輕巧的工具叫做 btop:

圖二:btop 執行畫面 (大圖)

接下來會介紹除了 htop 以外也很常用到的工具。

More “駭客軍團之電腦監視工具” »

Tags:Linux

駭客軍團之 tar 指令

Posted on 2021 年 9 月 22 日2021 年 9 月 27 日 By 日落 在〈駭客軍團之 tar 指令〉中尚無留言

Netflix 上的影集「駭客軍團」不愧是以駭客為主題的影集,製作也非常用心,連螢幕畫面、指令也都是現實生活中存在的東西。從幹壞事來學習新知識才快。 XD

tar 是一個用來「打包」檔案的工具。當有多個檔案需要傳輸時,一個一個檔案傳輸很費事,不如全部打包後一起上傳,這時就找 tar 上場。

假如這邊有三個檔案:exploit.h、exploit.so、readme.md,需要將三個檔案打包時,指令可以這樣下:

tar -cf data-pack.tar exploit.h exploit.so readme.md

這邊用到二個參數:

  • -c:建立檔案 (Create file) 的意思
  • -f:指定檔案 (File) 名稱

全部接在一起的意思就是:「將 exploit.h、exploit.so、readme.md 打包並儲存到新的檔案 data-pack.tar」。

另外,用 tar 打包後的檔案,通常也稱為 tarball。

More “駭客軍團之 tar 指令” »

Tags:Linux

SQL Server Linked Database insert 前會先 select

Posted on 2021 年 9 月 16 日2021 年 9 月 16 日 By 日落 在〈SQL Server Linked Database insert 前會先 select〉中尚無留言

苦主的主機自從在 SQL Server 跑 store procedure,透過 Linked Database 的方式把資料複製到 MySQL 以後,發現費用大為增加,開啟了 general query log 才發現在 insert into 之前還有詭異的行為:

312 Query	SELECT @@transaction_isolation
312 Query	set @@max_execution_time=600000
312 Query	set @@sql_select_limit=DEFAULT
312 Query	SELECT * FROM report.test
312 Init DB	report
312 Query	select database()
312 Query	set @@max_execution_time=600000
312 Prepare	insert into  report.test (s) values ("123")

有發現嗎?在第 4 行有個 SELECT,而且沒有任何 where 條件:會把整個 table 的資料全部拉回去。當好這張表就是放統計資料,所以流量就反應在帳單上了。


原本以為是 SQL Server 拉資料回去來分析 table schema,可惜不是。

針對 SQL Server 的 MSDASQL 和 MySQL ODBC Connecter 的設定做測試,發現 SQL Server 會自動使用 information_schema 來分析 table schema,若從 ODBC 把 filter 掉 information_schema 的後,SQL Server 會顯示出錯誤的資料。

目前大概只能把問題縮小到 SQL Server 上,但仍舊不明所以。若有遇到這類的問題只能盡量 workaround 掉了。

Tags:MSSQL

Windows 10 Start Menu Sucks

Posted on 2021 年 9 月 15 日2021 年 9 月 15 日 By 日落 在〈Windows 10 Start Menu Sucks〉中尚無留言

Windows 10 的開始功能表雖然可以用關鍵字搜尋,但是更新的軟體、移除的軟體在開始功能表都不會更新,甚至有些軟體名稱根本搜尋不到,也沒有在程式集列出。

若要手動調整開始功能表的項目,請至以下二個目錄調整:

  • C:\ProgramData\Microsoft\Windows\Start Menu\Programs
  • C:\Users\[使用者名稱]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs

最後還是要講一下 …. windows sucks …

Tags:Windows

文章分頁

上一頁 1 ... 52 53 54 ... 318 下一頁

其他

關於我  (About me)

  文章 RSS Feed

  留言 RSS Feed

Apache AWS Bash C/C++ Docker FreeBSD GCP Git Google Java JavaScript Laravel Linux Microsoft MSSQL MySQL Nginx PHP PHPUnit PostgreSQL Python Qt Ubuntu Unix Vim Web Windows WordPress XD 作業系統 分享 好站推薦 專題 攝影 新奇搞笑 新聞 旅遊 生活雜記 程式設計 網路架站 網頁設計 資訊學習 資訊安全 遊戲 音樂


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權.