Bash資安管理手冊8~12章
產品部 / 上德 / 2023-8-31
DevOps讀書會
B L U E P L A N E T
Outline
O1
我的學習方式
O2
8~12章內容介紹
O3
自己的練習
2
B L U E P L A N E T
一、我的學習方式
3
B L U E P L A N E T
準備過程及心得
4
B L U E P L A N E T
練習環境
5
B L U E P L A N E T
Linux 執行 bash 檔案系統回覆 `comman not found`
1. Script需要 x 權限,使用 chomod 設定
2. 在指令的前面加上
3. 在指令的前面加上 `.` ,強制 Script 不 fork 子程序,繼承環境變數
6
chmod u+rx
/bin/bash
B L U E P L A N E T
一些奇怪的翻譯
7
B L U E P L A N E T
二、8~12章內容介紹
8
B L U E P L A N E T
第八章、日誌即時監控
9
sudo tail -f /var/log/nginx/access.log | egrep 'HTTP/.*" 200'
sudo tail -f /var/log/nginx/access.log | egrep --line-buffered 'HTTP/.*" 200' | cut -d " " -f 4-7
B L U E P L A N E T
以日誌進行入侵偵測
10
\.\./
etc/passwd
etc/shadow
cmd\.exe
/bin/sh
/bin/bash
sudo tail -f /var/log/nginx/access.log | egrep -i -f ioc.txt
sudo tail -f /var/log/nginx/access.log | egrep --line-buffered -i -f ioc.txt | tee -a interesting.txt &
B L U E P L A N E T
第九章、工具:網路監看
11
B L U E P L A N E T
在 Linux裡排定任務時間表 - Crontab
12
crontab -l
crontab -e
0 8 * * * /home/paul/autoscan.sh
B L U E P L A N E T
第十章、工具:檔案系統監看
13
B L U E P L A N E T
第十一章、惡意軟體分析
14
B L U E P L A N E T
常用指令
15
B L U E P L A N E T
第十二章、格式化報表
16
printf '<%s>%s</%s>\n' "${1}" "${2}" "${1}"
$ /bin/bash tagit.sh div test
<div>test</div>
B L U E P L A N E T
三、自己的練習
17
B L U E P L A N E T
練習的自訂題目
18
B L U E P L A N E T
步驟一:將 nginx 的 log 輸出成文字檔
19
sudo tail -f /var/log/nginx/access.log | egrep --line-buffered 'HTTP/.*" 200' | cut -d " " -f 4-7
sudo tail -f /var/log/nginx/access.log | egrep --line-buffered 'HTTP/.*" 200' | stdbuf -o0 cut -d " " -f 4-7 > nginx-log.txt &
B L U E P L A N E T
步驟二:把輸出指令寫成 .sh檔
20
/bin/bash ./get-nginx-log.sh
#!/bin/bash
log_file="$1"
output_file="$2"
sudo tail -f "$log_file" | egrep --line-buffered 'HTTP/.*" 200' | stdbuf -o0 cut -d " " -f 4-7 > "$output_file" &
/bin/bash ./get-nginx-log.sh /var/log/nginx/access.log nginx-log.txt
B L U E P L A N E T
步驟三:將文字檔輸出成 html表格
21
/bin/bash weblogfmt.sh nginx-log.txt > index.html
B L U E P L A N E T
步驟四:建立排程
22
crontab -l
crontab -e
*/1 * * * * /bin/bash /home/sdyou/practice/weblogfmt.sh /home/sdyou/practice/nginx-log.txt > /home/sdyou/practice/index.html
B L U E P L A N E T
步驟五:設定 nginx
23
B L U E P L A N E T
Thank you