网站首页设计多少钱,购物网站下载,wordpress商品主图,免费做app你的第一个脚本#xff1a;“你好#xff0c;黑客崛起#xff01;”
首先#xff0c;您需要告诉操作系统您要为脚本使用哪个解释器。 为此#xff0c;请输入 shebang#xff0c;它是井号和感叹号的组合#xff0c;如下所示#xff1a;#!
然后#xff0c;在 shebang …你的第一个脚本“你好黑客崛起”
首先您需要告诉操作系统您要为脚本使用哪个解释器。 为此请输入 shebang它是井号和感叹号的组合如下所示#!
然后在 shebang (#!) 后面加上 /bin/bash 来指示您希望操作系统使用 bash shell 解释器。正如您将在后面的章节中看到的您还可以使用 shebang 来使用其他解释器例如 Perl 或 Python。 在这里使用 bash 解释器因此输入以下内容#! /bin/bash
接下来输入 echo 命令该命令告诉系统简单地重复或回显该命令后面的任何内容到您的监视器。请注意我们要回显的文本或消息必须用双引号引起来。
#! /bin/bash
echo Hello, Hackers-Arise现在将此文件另存为 HelloHackersArise不带扩展名然后退出文本编辑器。
设置执行权限
chmod 755 HelloHackersArise – 设置刚刚创建的脚本的权限给予它可执行权限。
运行 HelloHackersArise
./HelloHackersArise – 运行刚刚创建的脚本文件。
通过变量和用户输入添加功能
变量是可以在内存中保存某些内容的存储区域。保存的内容可以是一些字母或单词字符串或数字。 它之所以被称为变量是因为其中保存的值是可变的
在我们的下一个脚本中我们将添加功能来提示用户输入他们的姓名将他们输入的任何内容放入变量中然后提示用户输入他们在本书中的章节并将键盘输入放入变量中。 之后我们将向用户回显一条欢迎消息其中包括他们的姓名和章节。
#! /bin/bash
# This is your second bash script. In this one, you prompt
# the user for input, place the input in a variable, and
# display the variable contents in a string.
echo What is your name?
read name
echo What chapter are you on in Linux Basics for Hackers?
read chapter
echo Welcome $name to Chapter $chapter of Linux Basics for Hackers!我们提示用户输入他们的名字并要求解释器读取输入并将其放入我们称为name的变量中。然后我们提示用户输入他们当前正在阅读的章节然后我们再次将键盘输入读取到一个变量中这次称为chapter。要使用变量中包含的值必须在变量名称前添加 $符号。
将此文件另存为 WelcomeScript.sh。 .sh 扩展名是脚本文件的约定。如果您不使用扩展名也没有什么区别。这并不是严格要求的。不过该扩展名对于其他人来说可能是一个有用的指示表明该文件是一个 shell 脚本。
您的第一个黑客脚本扫描开放端口
最简单且最可靠的 nmap 扫描是 TCP 连接扫描由 nmap 中的 -sT 开关指定。 因此如果您想使用 TCP 扫描来扫描 IP 地址 192.168.181.1您需要输入以下内容namp -sT 192.168.181.1
更进一步如果您想对地址 192.168.181.1 执行 TCP 扫描查看端口 3306MySQL 的默认端口是否打开您可以输入以下内容nmap -sT 192.168.181.1 -p 3306
这里-p 指定要扫描的端口。
我们的任务
一个简单的扫描仪
在我们编写脚本来扫描互联网上的公共 IP 之前让我们先完成一个更小的任务。 我们先不扫描全球而是先编写一个脚本来扫描局域网上的 3306 端口看看我们的脚本是否真的有效。 如果是这样我们可以轻松地编辑它来完成更大的任务。
在文本编辑器中输入下列脚本:
#! /bin/bash
# This script is designed to find hosts with MySQL installed
nmap -sT 192.168.181.0/24 -p 3306 /dev/null -oG MySQLscan
cat MySQLscan | grep open MySQLscan2
cat MySQLscan2现在让我们使用 nmap 命令在 LAN 上请求 TCP 扫描寻找端口 3306 。 请注意您的 IP 地址可能有所不同在您的终端中使用 Linux 上的 ifconfig 命令或 Windows 上的 ipconfig 命令来确定您的 IP 地址。重定向符号 告诉标准 nmap 输出通常会显示在屏幕上改为转到 /dev/null这只是一个发送输出的地方以便它消失。我们是在本地计算机上执行此操作因此这并不重要但如果您要远程使用该脚本则需要隐藏 nmap 输出。 然后我们将扫描的输出以 grep 格式发送到名为 MySQLscan 的文件这意味着 grep 可以处理的格式。
改进 MySQL 扫描器
现在我们要修改此脚本使其不仅仅适用于您自己的本地网络。 如果该脚本可以提示用户输入要扫描的 IP 地址范围和要查找的端口然后使用该输入那么它会更容易使用。
向我们的黑客脚本添加提示和变量
#! /bin/bash
echo Enter the starting IP address :
read FirstIP
echo Enter the last octet of the last IP address :
read LastOctetIP
echo Enter the port number you want to scan for :
read port
nmap -sT $FirstIP-$LastOctetIP -p $port /dev/null -oG MySQLscan
cat MySQLscan | grep open MySQLscan2
cat MySQLscan2A Sample Run
现在我们可以使用变量来运行简单的扫描器脚本这些变量确定要扫描的 IP 地址范围和端口而无需每次要运行扫描时都编辑脚本./HelloHackersArise.sh
常见的内置 Bash 命令