黑客最喜欢的脚本之一Perl,让你拥有无限可能
yuyutoo 2025-01-08 18:25 2 浏览 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 地址和其他网络信息。
想象一下能力可以为我们做什么!可以无限放大。
相关推荐
- 史上最全的浏览器兼容性问题和解决方案
-
微信ID:WEB_wysj(点击关注)◎◎◎◎◎◎◎◎◎一┳═┻︻▄(页底留言开放,欢迎来吐槽)●●●...
-
- 平面设计基础知识_平面设计基础知识实验收获与总结
-
CSS构造颜色,背景与图像1.使用span更好的控制文本中局部区域的文本:文本;2.使用display属性提供区块转变:display:inline(是内联的...
-
2025-02-21 16:01 yuyutoo
- 写作排版简单三步就行-工具篇_作文排版模板
-
和我们工作中日常word排版内部交流不同,这篇教程介绍的写作排版主要是用于“微信公众号、头条号”网络展示。写作展现的是我的思考,排版是让写作在网格上更好地展现。在写作上花费时间是有累积复利优势的,在排...
- 写一个2048的游戏_2048小游戏功能实现
-
1.创建HTML文件1.打开一个文本编辑器,例如Notepad++、SublimeText、VisualStudioCode等。2.将以下HTML代码复制并粘贴到文本编辑器中:html...
- 今天你穿“短袖”了吗?青岛最高23℃!接下来几天气温更刺激……
-
最近的天气暖和得让很多小伙伴们喊“热”!!! 昨天的气温到底升得有多高呢?你家有没有榜上有名?...
- CSS不规则卡片,纯CSS制作优惠券样式,CSS实现锯齿样式
-
之前也有写过CSS优惠券样式《CSS3径向渐变实现优惠券波浪造型》,这次再来温习一遍,并且将更为详细的讲解,从布局到具体样式说明,最后定义CSS变量,自定义主题颜色。布局...
- 你的自我界限够强大吗?_你的自我界限够强大吗英文
-
我的结果:A、该设立新的界限...
- 行内元素与块级元素,以及区别_行内元素和块级元素有什么区别?
-
行内元素与块级元素首先,CSS规范规定,每个元素都有display属性,确定该元素的类型,每个元素都有默认的display值,分别为块级(block)、行内(inline)。块级元素:(以下列举比较常...
-
- 让“成都速度”跑得潇潇洒洒,地上地下共享轨交繁华
-
去年的两会期间,习近平总书记在参加人大会议四川代表团审议时,对治蜀兴川提出了明确要求,指明了前行方向,并带来了“祝四川人民的生活越来越安逸”的美好祝福。又是一年...
-
2025-02-21 16:00 yuyutoo
- 今年国家综合性消防救援队伍计划招录消防员15000名
-
记者24日从应急管理部获悉,国家综合性消防救援队伍2023年消防员招录工作已正式启动。今年共计划招录消防员15000名,其中高校应届毕业生5000名、退役士兵5000名、社会青年5000名。本次招录的...
- 一起盘点最新 Chrome v133 的5大主流特性 ?
-
1.CSS的高级attr()方法CSSattr()函数是CSSLevel5中用于检索DOM元素的属性值并将其用于CSS属性值,类似于var()函数替换自定义属性值的方式。...
- 竞走团体世锦赛5月太仓举行 世界冠军杨家玉担任形象大使
-
style="text-align:center;"data-mce-style="text-align:...
- 学物理能做什么?_学物理能做什么 卢昌海
-
作者:曹则贤中国科学院物理研究所原标题:《物理学:ASourceofPowerforMan》在2006年中央电视台《对话》栏目的某期节目中,主持人问过我一个的问题:“学物理的人,如果日后不...
-
- 你不知道的关于这只眯眼兔的6个小秘密
-
在你们忙着给熊本君做表情包的时候,要知道,最先在网络上引起轰动的可是这只脸上只有两条缝的兔子——兔斯基。今年,它更是迎来了自己的10岁生日。①关于德艺双馨“老艺...
-
2025-02-21 16:00 yuyutoo
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- 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)