欢迎来到【血梦博客】 今天是:2020年10月20日 星期二
站长联系QQ:635948183
当前位置: 网站首页> 渗透测试> 【渗透测试笔记】之【熟悉KALI环境】

【渗透测试笔记】之【熟悉KALI环境】

作者:血梦 日期:2020-08-07 浏览:261分类: 渗透测试 已提交百度收录

常用BASH命令


  • ls、cd、pwd、cat、more、tail、cp、rm、top、ps、grep、ifconfig、netstat、awk、sort、route、mount、amesg、find、whereis、echo、vi


ls  # 显示当前目录下的目录及文件
ls -a  # 显示包括隐藏文件
ls -lh  # 显示文件目录详细信息(加上h是将文件大小换算为K或者M,否则为字节大小)

cd  # 进入某一个目录
cd ..  # 返回上一级目录
cd ~  # 进入用户主目录

cat 1.txt  # 查看文件(适用于小文件,直接显示整个文件)
more 1.txt  # 查看文件(适用于大文件,只显示一页,回车可以翻页,q退出)
less 1.txt  # 和more基本相同
tail 1.txt  # 查看最后十行
tail -20 1.txt  # 查看最后20行
watch -n 2 tail -20 1.txt  # 每两秒钟查看一下1.txt最后20行,相当于每两秒钟刷新一次

rm 1.txt  # 删除文件
rm -r 1  # 删除目录1
cp 1.txt 1back.txt  # 复制文件1并命名为1back.txt
cp -r 1 2  # 复制目录1并命名为2

top  # 任务管理器
ps   # 查看进程信息
ps -ef  # 查看进程详细信息
ps aux  # 与-ef参数相近

grep ssh /etc/passwd  # 显示只包含ssh的内容
grep -v '0' # 不显示包含0的内容

ifconfig  # 查看网络信息
ifconfig eth0 down  # 关闭eth0网卡
macchanger -m 00:11:11:11:11:11 eth0  # 修改eth0 Mac地址(仅本次开机期间有效)
ifconfig eth0 up  # 启动网卡

netstat -pantu  # 查看TCP/UDP连接情况
netstat -pantu | egrep -v '0.0.0.0'|':::' # 不显示0.0.0.0或者:::
netstat -pantu | egrep -v '0.0.0.0'|':::' | awk '{print $5}' # 仅输出第五列数据
netstat -pantu | egrep -v '0.0.0.0'|':::' | awk '{print $5}' | cut -d ':' -f 1  # 以:分块并且显示第一块
netstat -pantu | egrep -v '0.0.0.0'|':::' | awk '{print $5}' | cut -d ':' -f 1 | sort | uniq  # 重复的只显示一次
netstat -pantu | egrep -v '0.0.0.0'|':::' | awk '{print $5}' | cut -d ':' -f 1 | sort | uniq > ip.txt  # 将结果覆盖输出到ip.txt文件(没有则会创建)。>为覆盖,>>为追加。

mount  # 查看当前挂载
mount -o loop kali.iso /media/cdrom  # 将指定文件挂载到指定目录

dmesg  # 查看/var/log/messages

find / -name a.txt  # 在根下查找指定文件
find / -iname a.txt  # 忽略大小写
find . -name a*  # *是通配符代表任意字符串
whereis # whereis命令只能用于程序名的搜索。如果省略参数,则返回所有信息。
whereis -b  # 搜索二进制文件
whereis -m  # man说明文件(参数-m)
whereis -s  # 源代码文件(参数-s)

echo "hello world"  # 回显
简单的shell脚本
1. 一个简单的shell脚本



vi 1.sh  # 创建一个脚本文件
文件内容如下:



#!/bin/bash
echo "Hello World!"
echo -n "Please input something:"
read thing
echo $thing
保存退出。
增加执行权限:



chmod +x 1.sh
执行:



./1.sh
效果如下:
在这里插入图片描述
2. 九九乘法表shell脚本:



vi 99.sh
输入内容:



#!/bin/bash
for n in `seq 9`
do
for m in `seq $n`
do
echo -n "$m*$n=" `expr $m \* $n`"	"
done
echo
done
增加执行权限:



chmod +x 99.sh
执行:



./99.sh

效果如下:
在这里插入图片描述
3. 简单的ping脚本(显示一个网段的在线主机)

vi ping.sh
内容如下:


#!/bin/bash
for n in `seq 254`
do
        ping 192.168.1.$n -c 1 | grep ttl | awk '{print $4}' | awk -F: '{print $1}'
done
增加执行权限:


chmod +x ping.sh
执行:


./ping.sh

效果如下:
在这里插入图片描述
4. 批量扫描已知和ip和端口

创建和执行方法将不再赘述

内容如下:

#!/bin/bash
A = `cat ip.txt`
for B in $A
do
n=`echo $B | wc -L`
if [ $n -gt 6 ] ; then
ip=$B
else
port=$B
nmap -p$port -sV $ip | grep -v Starting | grep -v Host | grep -v PORT | grep -v Service | grep -v done >> result1
fi
done
ip.txt内容如下:

211.144.139.4
80
8080

211.144.139.30
18001
18063

127.0.0.1
3389
443
8080
80


扫描结果将会保存到result1




关灯