黑客最喜欢的脚本之一Perl,让你拥有无限可能
yuyutoo 2025-01-08 18:25 1 浏览 0 评论
黑客最喜欢的脚本之一perl,让你拥有无限可能
要更进一步提高自己,您必须学习脚本技能。使用其他黑客的工具固然很好,但要获得并保持优势,您必须开发自己独特的工具,通过开发脚本技能来做到这一点。
Perl 的历史
在 Linux 环境中使用最广泛的脚本语言可能是 Perl, Perl 由语言学家 Larry Wall 于 1987 年开发。他专门设计了它来操作文本。Wall 对设计一种脚本语言很感兴趣,该语言能够从多个来源提取文本以生成报告——我们现在认为这个比较正常——在当时是非常不简单的。
为什么 Perl 在 Linux 中如此重要
- 由于 Linux 中的几乎所有内容都是一个文件,而且其中有许多简单的文本文件,因此 Perl 已被证明在 Linux 环境中特别有用。此外,Perl 使我们能够在脚本中使用 shell 脚本命令,这使得它对于编写既需要 shell 命令又需要文本操作的脚本黑客任务非常有用,例如网站侦测和黑客攻击。
- Perl 也是有用的正则表达式或正则表达式的来源,它已进入许多黑客、安全和 Linux 应用程序。这些正则表达式为我们提供了在 Snort、MySQL、Oracle DBMS 等众多应用程序中查找文本模式的强大功能。正则表达式最初是为 Perl 开发的,在某些情况下被称为 Perl Compatible Regular Expressions,或 PCRE。
- 系统上的 Perl由于 Perl 在 Linux 中的应用如此广泛,每个 Linux 发行版都带有 Perl 解释器,Kali 也不例外。如果你运行的是 Windows,你可以在这里下载 Perl 解释器。
- Perl 已被用于开发许多黑客工具,包括 nikto、oneixtyone、snmpenum、、adminfinder 等等。Perl 还因其能够用于将 SQL 脚本从 Web 应用程序发送到后端数据库而受到青睐(亚马逊的网站为此目的使用它)。
如果我们想在 Kali 中查找所有 Perl 脚本,我们可以输入:
·kali > locate *.pl
我们可以看到在 Kali 中有数百个用于多种用途的 Perl 脚本。请注意,在上面的屏幕截图中,有多少exploit-db windows 远程利用是用 Perl 编写的。这只是冰山一角,表明 Perl 脚本在黑客攻击和通用 Linux 管理中的重要性。
Perl 非常重要,在我们使用 Perl、Python 和 Ruby 开发自己的黑客工具/脚本的过程中,我将完成至少三个 Perl 教程。
所以,让我们开始 Perl-ing!
第 1 步:创建脚本
您可以在安装了 Perl 解释器和任何文本编辑器(包括 vim、emacs、kate、gedit 等)的任何平台上开发您的 Perl 脚本。这里我们将使用 Kali 内置的文本编辑器 Leafpad 来开发一个简单的 Perl 脚本。随着我们变得越来越先进,我们将希望添加一个 IDE 环境,该环境可以使脚本开发和调试变得更加简单和高效。
让我们通过转到 Applications ->Accessories 然后 Leafpad 打开 Leafpad。
在 Leafpad 打开的情况下,让我们输入以下内容:
usr/bin/perl
print "Hackers-Arise!\n" ;
第一行简单地告诉系统使用哪个解释器来运行后面的代码。第一段,“#!” 通常被称为“shebang”。在我们的例子中,我们希望这个代码被 Perl 解释器解释,所以我们在 shebang 后面加上“/usr/bin/perl”。这是 Perl 解释器的位置。
第二行是一个简单的打印语句。我们希望系统打印“Hello Hackers-Arise!”。我们以终止该行的特殊字符“\n”结束。
现在让我们保存它并称它为“firstperlscript”。
第 2 步:设置权限
让我们导航到我们保存它的目录并输入:
·kali >ls –l
我们的脚本已保存为默认权限 644。为了能够执行此脚本,我们将需要“执行”权限,因此我们需要将权限更改为 755,
·kali>chmod 755 firstperlscript
第 3 步:执行脚本
现在我们有了执行权限,我们可以通过键入以下命令来运行这个脚本:
./firstperlscript
如您所见,它打印了“Hello Hackers_Arise!”
第 4 步:Perl 中的特殊字符
Perl 有许多我们可以使用的特殊字符。我们使用了“\n”,它是一个换行符。Perl 的其他一些特殊字符是:
\0xx - 八进制值为 xx 的 ASCII 字符
\e - 一个转义字符
\n - 换行符
\r - 返回字符
\t - 一个制表符
还有更多,但这只是 Perl 中许多特殊字符的一个示例。我们将在后续 Perl 教程中根据需要介绍更多内容。
第 5 步:Perl 中的变量
在执行了一个非常简单的 Perl 脚本之后,让我们添加一些功能和复杂性。通常,在运行任何脚本时,我们都需要一些变量来保存信息。Perl 中的变量与 Linux 中的指定类似,在变量标签前使用“$”,例如$name。
让我们在文本编辑器中输入以下代码。
现在,让我们逐行检查这个简单的脚本。
第一行告诉系统在执行这个脚本时使用哪个解释器。
第二行只是打印语句。
第三行打印一个问题,询问用户他们最喜欢的网站是什么。
第四行将 STDIN(从键盘输入)放入一个名为 $name 的变量中。
第五行对变量 $name使用chomp函数。此功能将删除用户在回答我们的问题时可能输入的任何潜在的换行符。
最后,第六行打印我们的响应,其中包含来自变量 $name 的用户输入。
第 6 步:执行脚本
现在,让我们将此脚本保存为secondperlscript并将其权限从 644 更改为 755,以便我们执行它。最后,让我们输入以下命令来执行它:
kali>./secondperlscript
成功!我们能够将用户输入捕获到变量 $name 中,然后在网站 Hackers-Arise! 的打印语句中使用该输入。
第 7 步:Perl 中的 Shell 命令
使用 Perl 的优点之一是它允许我们直接从脚本到底层系统使用 shell 命令。有多种方法可以做到这一点,但我更喜欢使用带括号和双引号括起来的 shell 命令的系统函数(我们将在后续的 Perl 教程中介绍其他方法)。
为了演示这一点,让我们将以下行添加到我们的脚本中系统(“ifconfig”);
现在让我们将它保存为thirdperlscript并授予我们执行它的权限。
第 8 步:执行脚本
当脚本运行时,它的作用与我们的 secondperlscript 相同,但它也直接与操作系统交互以获取用户系统上的 IP 地址和其他网络信息。
想象一下能力可以为我们做什么!可以无限放大。
相关推荐
- springBoot使用Log4j
-
添加依赖<dependency><groupId>org.springframework.boot</groupId><ar...
- Log4j 严重漏洞修最新修复方案参考
-
CVE-2021-44228,原理上是log4j-core代码中的JNDI注入漏洞。这个漏洞可以直接导致服务器被入侵,而且由于“日志”场景的特性,攻击数据可以多层传导,甚至可以威胁到纯内网的服...
- 如何在Spring Boot中使用Log4j日志框架
-
SpringBoot是目前Java领域比较流行的一个应用程序开发框架,默认情况下使用的是SLF4J和Logback作为日志框架,但是在某些场景下,我们可能需要用到Log4j或Log4j2来满足一些特...
- log4j的使用
-
初识log4jlog4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIXSyslog...
- log4j的详细配置
-
###设置日志级别###log4j.rootLogger=error,stdout,D,E###输出到控制台###log4j.appender.stdout=org.apac...
- 深蹲时脚掌的打开弧度到底多少比较合适?
-
引子哈喽,大家晚上好,今天我还是给大家带来深蹲的小技巧。我们在之前的文章中,已经说过非常多关于深蹲的小技巧了,我想大家也已经知道了该如何去做一个正确的深蹲。今天我要给大家介绍一个经常被大家所忽略的技巧...
- 中杯vivo X90 对比超大杯X90 Pro+:京东方Q9和三星E6差距大吗?
-
X90标准版应该是大家目前最早能用到量产天玑9200处理器的一款手机了吧,根据蓝厂准则,想贪便宜肯定不能去线上买呀,线上买只是为了给低预算的朋友“分期”用的,根据线下渠道商提示:X90标准版目前已降价...
- 学习Geogebra重要的100条学习随笔(12)
-
角度①“0”:Alt+O;“π”:Alt+P;②GeoGebra默认计算都是使用弧度制;③携带度符号(°)的正常计算,但常量π/180会自动转为弧度。...
- 高中数学-三角函数
-
三角函数角的度量单位通常有两种,一种是角度制,另一种就是弧度制。...
- 数学与三角函数的基础用法和示例(一)
-
1.ABS函数说明返回数字的绝对值。一个数字的绝对值是该数字不带其符号的形式。语法ABS(number)...
- 折弯大圆弧每次折多少刀,折弯角度怎么计算
-
第一种方法如何折圆弧?(无模具时)如上图所示:板厚T=2MM,圆心角为90°1、先计算出弧长:弧长L=90°×3.14÷180°×中心层R59=92.632、选取折弯模具:上模用直剑刀,下模用8V(折...
- 高中数学里的角,和初中学的不太一样
-
同学们好,我是李状元数学课的李老师,讲人人都听得懂的高中数学课。经常有同学说起三角函数时会有点头疼,可是呢,三角函数其实是高中数学里比较基础的一部分,虽然应用非常广泛,但是一般都不会考察特别难的题目,...
- PS办公技巧:如何更改圆角矩形的弧度?
-
应用场景下图PS文档中有3个完全相同的圆角矩形(当前所有的圆角半径均为10像素),每个圆角矩形单独占用一个图层。下面我们让第1个图层“圆角矩形上”维持原样不变方便对比观察,将第2个图层“圆角矩形中”的...
- 解读角度制与弧度制的基础知识(讲义稿)
-
一、角度制1、什么叫做角度制?我们在平面几何学里研究的角度制,规定周角的1/360度为一度的角。这种用单位来度量角的制度叫做角度制。2、怎样用量角器来测量角?角的大小经常用量角器来测量(1)、点重合,...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- mybatis plus (70)
- scheduledtask (71)
- css滚动条 (60)
- java学生成绩管理系统 (59)
- 结构体数组 (69)
- databasemetadata (64)
- javastatic (68)
- jsp实用教程 (53)
- fontawesome (57)
- widget开发 (57)
- vb net教程 (62)
- hibernate 教程 (63)
- case语句 (57)
- svn连接 (74)
- directoryindex (69)
- session timeout (58)
- textbox换行 (67)
- extension_dir (64)
- linearlayout (58)
- vba高级教程 (75)
- iframe用法 (58)
- sqlparameter (59)
- trim函数 (59)
- flex布局 (63)
- contextloaderlistener (56)