本文所有技术,只针对于计算机安全渗透测试使用,严禁用于非法目的!!!
bash开始咯!
ps:有的人总说,真正的嘿客不仅工具玩的6,而且还会自己编写嘿客工具,今天这个就算是入门了,编写一个像nmap一样可以扫描存活主机的自定义脚本工具!恭喜啊!
linux可以在终端直接运行以.sh结尾的可执行脚本,我们称作bash脚本。犹如在windows的cmd终端中可以运行以.bat或者.vbs结尾的文件一样!
这些可执行脚本有一个共同点,就是使用特殊的关键字、语法和变量构成,只要在终端运行就能自动完成一些特殊任务,或者说是将diy的特点发挥到了极致!
今天我们就来设计一个可以自动扫描全网段的嘿客bash脚本,它的最大作用就是扫描局域网开机的电脑!简单几行即可完成这个任务!小白们,走起吧!
走起!
1、首先打开kali系统的文本编辑器,输入:
使这个脚本具有提示功能 #!/bin/bash echo "你运行的是ping全网段扫描器!" echo "使用方式是输入: ./pingto.sh 192.168.31"
2、修改这个文本文件名为pingto.sh并保存root主目录下
然后打开终端输入: 赋予这个脚本当前创建用户的执行权限: root@kali:~# chmod +x pingto.sh
3、在终端中运行这个脚本进行检验,输入:
root@kali:~# ./pingto.sh
hello
4、在pingto.sh文本文件中添加if语句:
提示:后面的所有修改添加都是在原来创建的pingto.sh文件中完成的!
#!/bin/bash #如果我们输入的参数是空的,就提示错误 if [ "$1" == "" ] then echo "你运行的是ping全网段扫描器!" echo "使用方式是输入: ./pingto.sh 192.168.31" fi #如果你的路由器前面三项数字是192.168.1 #你就输入192.168.1
5、添加for循环进行扫描
#!/bin/bash #如果我们输入的参数是空的,就提示错误 if [ "$1" == "" ] then echo "你运行的是ping全网段扫描器!" echo "使用方式是输入: ./pingto.sh 192.168.31" #如果不是空的,就执行下面的语句 else #依次遍历1到254(全网段) for x in `seq 1 254`; do #这个脚本最终的功能语句(扫描) #只要有主机主机存活,就会打印提示 ping -c 1 $1.$x done fi
6、在终端运行()
后面会自动添加1-254(192.168.31.1-254) root@kali:~# ./pingto.sh 192.168.31
不要输入错误!
上面输出文字较多,而且不能一目了然!现在我们做出优化,只要能扫描到任何存活的主机,就立即打印该主机的ip地址。(类似我们的扫描工具nmap)
将pingto.sh文件重新编辑成下面 然后在终端输入./pingto.sh运行 #!/bin/bash #如果我们输入的参数是空的,就提示错误 if [ "$1" == "" ] then echo "你运行的是ping全网段扫描器!" echo "使用方式是输入: ./pingto.sh 192.168.31" #如果不是空的,就执行下面的语句 else #依次遍历1到254(全网段) for x in `seq 1 254`; do #这个脚本最终的功能语句(扫描) #只要有主机主机存活,就会打印提示 #扫描出来,提取有返回64字节的输出 #并且进一步截取其中存活主机的IP ping -c 1 $1.$x | grep "64 bytes" | cut -d " " -f 4 | sed "s/.$//" done fi
已经扫描到局域网的主机ip
至此,我们的局域网ip主机扫描器就制作好了,是不是很简单!它不仅具备了nmap扫描主机的基本ping扫描功能,而且重点是:是我们自己编写的!你又进步了!恭喜啊!