
由脚本小子为脚本小子们打造 成为网络忍者

脚本小子的《灰帽黑客》单人模式V1.0.0系统入侵指南,这是一份帮助你在《灰帽黑客》世界入门的教程,如果你遇到困难的话。 通过本指南中的应用程序,你应该能够入侵网络中的任何设备。 【Rat-Lite】 【不速之客】 最佳的入侵是能立即获得root权限的入侵,获取方式因攻击而异。有些攻击能立即获得root权限,而其他攻击可能需要额外步骤,例如:权限提升、社会工程学、软件工程。 权限提升和社会工程学有时会出奇地简单。你所需要的只是一个“用户名”和他们所在网络的“全球IP”,运行这个命令(whois "ip地址")会显示管理员的详细信息,然后获取管理员的电子邮件,给他们发邮件并索要“用户名”的凭证。 软件工程,我认为是这款游戏中最令人却步的部分,但也是最有回报的部分。 以下是我称之为ARAT v1.0.0的程序的灰色脚本源代码,这是一个模块化的网络入侵工具,可以根据你在游戏中的情况需求进行升级。 此程序需要metaxploit.so和crypto.so才能完全运行。如果你研究代码,会注意到邮件部分有一段被注释掉的内容,如果你想破解这些账户,可以取消注释。我将其关闭只是为了获取名称。银行选项已开启解密功能,请谨慎使用。 使用此程序时,若输入4个参数,将出现带有选项的菜单,这些选项的实用性会根据你使用的内存/溢出情况而有所不同。 这款游戏在不断发展,如果你想了解更多信息,随时可以提问,学习是很有趣的。我懂不少,但并非完全了解所有内容。 我对这些东西了解不多,但我知道如何很好地破坏某些东西,希望这能帮助一些人更享受游戏。代码注释不多,但当你查看时,应该能很明显地知道发生了什么。 程序过大,将放在另一个部分。



ARAT V1.0.0 print("@@@@@@@@@@@@@@@@@@@ARATv1.0.@@@@@@@@@@@@@@@@@@@@@@@@@@@@") 打印("@#@#@#@#@#@#@#@#@#@#@#@#@#控制面板@#@#@#@#@#@#@#@#@#@#@#") 打印("获取银行账户信息、查看用户名和电子邮件地址或获取根权限") 打印("文件传输协议/根权限 端口21 内存/溢出:0x22E525BA rlengt") 打印("超文本传输协议 结构化查询语言/根权限 端口3306,141 内存/溢出:0x6253B93F screelinen") 打印("安全外壳协议 获取外壳 端口22,65390,8002 内存/溢出:0x57C3BF1 _isvisible") 打印("超文本传输协议 结构化查询语言/计算机 端口3306,141 内存/溢出:0x2DA03CC7 zedelc") 打印("超文本传输协议 计算机 端口80 内存/溢出:0x453E184F transfore") 打印("超文本传输协议 根权限 端口80 内存/溢出:0x539ECFDB pendquot") 打印("路由器访问 端口0在文件访问受限的系统上,你需要拥有root权限或特权访问才能查看这些文件。 在带有交换机的网络中,你可以直接从交换机发起攻击。记住,使用scanLan.exe中的ping命令来查看从A点到B点的路由。如果ping失败,你需要将攻击转移到其他网络设备上。 例如,系统A、B、C的网络结构为A>B-C,其中A是路由器,B是交换机,C是计算机。如果从A到B的ping成功,但从A到C的ping失败,那么就将攻击转移到B上再试一次。 我喜欢创建一个文件夹,存放我的主要攻击程序、nmap、ssh、whois、metaxploit、crypto.so以及可利用的kernel_router.so。当你侵入一个路由器或系统后,将这个文件夹复制到那里,这样你就能在本地网络中拥有传播到其他系统所需的所有工具了。配置ARAT 用法:ARAT IP地址 端口 内存 缓冲区溢出 ARAT的初始面板信息来自于我开发此软件时所基于的游戏。由于单人游戏中不同游戏的内存十六进制值和溢出情况各不相同,因此你需要自行通过游玩来获取这些信息。 该程序需要4个参数。若从控制台运行此程序时提供的参数少于4个,将会显示面板。面板会展示使用语法以及收藏的漏洞等信息,以便在网络入侵时快速访问。在游戏初期,使用【解密程序】寻找缓冲区溢出漏洞可能会非常耗时,还会对系统造成很多不必要的损坏。我建议,当你需要新的攻击向量时,可以去【黑客商店】搜索相关工具,并使用商店里的溢出漏洞。从系统损坏的角度来看,长期使用这种方法成本可能更低。 有些攻击可能因系统不同而无法奏效,但它们也可能会泄露用户名,要留意这一点!用户名也很有用!一个用户名可以轻松转化为特权访问。如果你获得了访客权限,那么距离获得特权访问可能只差一封邮件了。导航到/home目录,检查这里的用户文件夹,给网络管理员发一封声泪俱下的邮件,说明你需要登录信息,这样你就成功了。<b><u>内存/溢出:0x5B844528 常量") 打印("<b>禁用防火墙端口 0 <b><u>内存/溢出:0x5B844528 值") 打印("输入一个 <u>IP地址</u> <u>端口</u> <u>内存地址</u> <u>缓冲区溢出") 打印("@#@#@#@#@#@#@#@#@#@#@#@#@#控制面板@#@#@#@#@#@#@#@#@#@#@#") 打印("@@@@@@@@@@@@@@@@@@@ARATv1.0.0@@@@@@@@@@@@@@@@@@@@@@@@@@@@") 如果参数长度不等于4 或者 参数[0] 等于 "-h" 或者 参数[0] 等于 "--help" 则 退出("<b>用法: "+程序路径分割("/")[-1]+" [ip地址] [端口] [内存地址] [缓冲区溢出]<b>") 元漏洞利用 = 包含库("/lib/metaxploit.so") 如果 非 元漏洞利用 则 元漏洞利用 = 包含库(当前路径 + "/metaxploit.所以") 结束 如果 如果 不存在 metaxploit 则 退出("错误:在/lib路径或当前文件夹中找不到metaxploit库") 地址 = 参数[0] 端口 = 参数[1].转为整数 内存 = 参数[2] 内存X = 参数[3] 循环 真 打印("攻击已正确配置!") 打印("选择一个选项:") 打印("选项1:获取Shell") 打印("选项2:破解银行信息") 打印("选项3:查找电子邮件地址") 打印("选项4:退出程序") 打印("选项5:控制路由器") 打印("选项6:禁用防火墙") 选项 = 用户输入("选项:") 如果 选项 == "4" 则 退出("--退出中--ARAT:V1.0.0--") 如果 选项 == "1" 则 网络会话 = metaxploit.网络使用( 地址, 端口 ) 如果 不存在 网络会话 则 退出("错误:无法连接到网络会话") 元库 = 网络会话.dump_lib newPass = user_input("输入新密码: ") result = metaLib.overflow(mem, memX, newPass) if not result then exit("程序结束") if typeof(result) != "shell" then exit("请求shell但得到了" + result + "...或许可以尝试其他选项") if typeof(result) == "shell" then result.start_terminal else print("错误: 预期为shell,实际获得: " + result) end if else if opt == "3" then net_session = metaxploit.net_use( address, port ) if not net_session then exit("错误: 无法连接到网络会话") metaLib = net_session.dump_lib result = metaLib.overflow(mem, memX) if not result then exit("程序结束") if typeof(result) == "computer" then homeFolder = result.File("/home") if not homeFolder then exit("错误: 未找到/home文件夹") userFolders = homeFolder.获取文件夹 found = false for userFolder in userFolders bankFile = result.File("/home/" + userFolder.name + "/Config/Mail.txt") if not bankFile then continue if not bankFile.has_permission("r") then exit("错误:无法读取文件内容。权限被拒绝") userPass = bankFile.get_content.split(":") print("找到用户的电子邮箱地址:" + userFolder.name) //password = GetPassword(userPass) //if not password then //print("未找到任何内容...") //else //print("电子邮箱账户:" + userPass[0] +" n银行密码:" + password) print("电子邮箱账户:" +userPass[0]) found = true //end if end for if not found then print("未找到文件")result.start_terminal end if else //############################# cryptools = include_lib("/lib/crypto.so\") 如果不存在cryptools则 cryptools = 引入库(当前路径 + \"/crypto.so\") 结束如果 如果不存在cryptools则退出(\"错误:在/lib路径或当前文件夹中找不到crypto.so库\") 获取密码 = 函数(用户密码) 如果用户密码长度不等于2则退出(\"解密:语法错误\") 密码 = cryptools.解密(用户密码[1]) 返回密码 结束函数 如果选项等于\"2\"则 网络会话 = 元漏洞利用.网络使用(地址, 端口) 如果不存在网络会话则退出(\"错误:无法连接到网络会话\") 元库 = 网络会话.转储库 结果 = 元库.溢出(内存, 内存X) 如果不存在结果则退出(\"程序结束\") 如果结果类型等于\"计算机\"则 主文件夹 = 结果.文件(\"/home\") 如果不存在主文件夹则退出(\"错误:未找到/home文件夹\") 用户文件夹 = 主文件夹.获取文件夹 找到 = 假 对于 用户文件夹 在 用户文件夹列表中 银行文件 = 结果.文件("/home/" + 用户文件夹.名称 + "/Config/Bank.txt") 如果 不存在银行文件 则 继续 如果 银行文件没有"r"权限 则 退出("错误:无法读取文件内容。权限被拒绝") 用户密码 = 银行文件.获取内容.分割(":") 打印("正在为用户发现银行信息:" + 用户文件夹.名称) 密码 = 获取密码(用户密码) 如果 不存在密码 则 打印("未找到...") 否则 打印("银行账户:" + 用户密码[0] +" 银行密码:" + 密码) 找到 = 真 结束如果 结束循环 如果 未找到 则 打印("未找到文件")结果.启动终端 结束如果 结束如果 如果 选项 == "5" 则 元漏洞利用 = 包含库("/lib/metaxploit.so") 如果 不存在元漏洞利用 则 元漏洞利用 = 包含库(当前路径 + "/metaxploit.因此") 结束 如果 如果 不存在 metaxploit 则 退出("错误:在/lib路径或当前文件夹中找不到metaxploit库") 地址 = 参数[0] 网络会话 = metaxploit.net_use(地址) 如果 不存在 网络会话 则 退出("错误:无法连接到网络会话") 元库 = 网络会话.dump_lib 结果 = 元库.overflow(内存, 内存X) 如果 不存在 结果 则 退出("程序结束") 如果 结果类型 == "shell" 则 结果.start_terminal 否则 打印("错误:预期为shell,实际获得:" + 结果) 结束 如果 结束 如果 结束 如果 结束 如果 如果 选项 == "6" 则 metaxploit = 包含库("/lib/metaxploit.so") 如果 不存在 metaxploit 则 metaxploit = 包含库(当前路径 + "/metaxploit.结束 if 如果未找到metaxploit,则退出("错误:在/lib路径或当前文件夹中找不到metaxploit库") 地址 = 参数[0] 网络会话 = metaxploit.net_use(地址) 如果没有网络会话,则退出("错误:无法连接到网络会话") 元库 = 网络会话.dump_lib 结果 = 元库.溢出(mem, memX) 如果没有结果,则退出("程序结束") 结束 if 结束循环 简要说明 这里描述的方法非常不严谨,如果你决定尝试多人游戏,建议你对从这里学到的知识持保留态度。 在当前版本中,我注意到单人游戏中非玩家角色的银行账户实际上没什么钱,不值得去偷,所以我不会涵盖这个话题。(如果你仍然想让别人破产,ARAT会给你银行信息。)

进入无端口系统 对于“删除远程文件”或“摧毁系统”等任务中遇到的无端口计算机,入侵过程会有些棘手,你需要按以下步骤操作: 1. 必须找到并保存一个可利用的kernel_router.so文件(特别是能从路由器获取用户邮箱凭证的版本)。 2. 必须拥有一个反向shell服务器。 3. 必须获取网络中至少另一位用户的邮箱凭证。 4. 必须从目标IP获取邮箱凭证。 5. 需要获得网络中某台路由器的Root权限。 6. 一旦获得路由器的Root权限,将可利用的kernel_router.so复制到该路由器的/lib文件夹中。(现在这台路由器完蛋了) 你必须获取针对kernel_router.so的内存十六进制漏洞利用程序(更具体地说,是能从受害者IP获取电子邮件凭证的漏洞利用程序)。 无论出于何种原因,如果你只从受害者IP获取到用户名,这也是可以的,用户名和电子邮件一样有用。在网络中,所有人都使用相同的电子邮件服务,所以发送漏洞利用邮件时,只需将用户名加上@任意邮件公司域名即可。 这些漏洞利用程序不会立即可用,你必须进行游戏,通过攻击系统或对kernel_router.so使用漏洞报告器来获取。 经过一段时间,当kernel_router.so更新后,你就会找到上述提到的漏洞利用程序。在我当前的游戏中,我在kernel_router.so版本1.0时找到了它们。现在假设你已完成所有设置 远程shell服务器正在监听连接 网络上有两个用户的电子邮件凭据,一个随机用户,一个来自目标IP。 使用邮件程序登录随机用户的邮箱,向目标发送带有有趣游戏附件的电子邮件,如果成功,他们现在已连接到远程shell服务器。 打开远程shell界面并连接到目标计算机。





从隔离局域网IP获取用户凭据 以下编译后的源代码可生成一个简单但功能强大的应用程序,用于从隔离的局域网IP获取用户名。 此程序需要3个参数【IP 内存 十六进制值】 其中IP是具有可利用内核模块(kernel.so)的路由器,后跟你想要获取凭据的局域网计算机。 你需要自行发现内存/十六进制值,查找那些包含获取用户凭据/电子邮件凭据的内容。 使用此简单代码从局域网IP获取用户名 打印【用法:IP 内存 十六进制值】 打印【后跟目标局域网IP】 如果参数长度不等于3,或者参数[0]为“-h”或“--help”,则退出并显示【用法:程序路径分割后的最后部分 [ip地址][内存][十六进制值]】 元漏洞利用(metaxploit)= 包含库("/lib/metaxploit."so\") 如果未找到metaxploit,则 metaxploit = 加载库(当前路径 + \"/metaxploit.so\") 结束如果 如果未找到metaxploit,则退出(\"错误:在/lib路径或当前文件夹中找不到metaxploit库\") 地址 = 参数[0] 内存 = 参数[1] 内存X = 参数[2] 网络会话 = metaxploit.网络使用(地址) 如果未建立网络会话,则退出(\"错误:无法连接到网络会话\") 内核库 = 网络会话.转储库 库名称 = \"kernel_router.so\" 打印(\"正在搜索\" + 库名称 + \"...\") 如果未找到内核库,则退出(\"错误:未找到\" + 库名称 + \"。\") 局域网IP = 用户输入(\"输入局域网地址:\") 结果 = 内核库.溢出(内存, 内存X, 局域网IP) 加密工具 = 加载库(\"/lib/crypto.so\") 如果未找到加密工具,则 加密工具 = 加载库(当前路径 + \"/crypto.so\") 结束如果 如果未找到加密工具,则退出(\"错误:无法找到加密工具。\")所以库位于/lib路径或当前文件夹中") GetPassword = 函数(用户密码) 如果 用户密码.长度 不等于 2 则 退出("解密: " + 文件.路径 + " 目标已用尽") 密码 = 加密工具.解密(用户密码[1]) 返回 密码 结束函数 类型对象 = 类型(结果) 如果(类型对象 不等于 "计算机") 则 退出("错误: 预期为计算机,实际获得 " + 类型对象) 文件 = 结果.文件("/etc/passwd") 如果 不存在 文件 则 退出("错误: 未找到文件 /etc/passwd") 如果 文件没有"读"权限 则 退出("错误: 无法读取 /etc/passwd。权限被拒绝。") 如果 文件是二进制文件 则 退出("错误: 发现无效的 /etc/passwd 文件。") 用户列表 = 文件.获取内容.分割(" n") 对于 用户列表中的每一行 用户密码 = 行.分割(":") 打印("正在解密用户 " + 用户密码[0] +"...")password = GetPassword(userPass) if not password then print("未找到...") else print("=> " + password) end if end for 漏洞查找器 使用方法:IP 端口 漏洞查找器应用程序需要两个参数:一个 IP 地址和一个端口,然后会打印该端口上的所有漏洞(如果有的话)。 简易漏洞查找器 if params.len != 2 or params[0] == "-h" or params[0] == "--help" then exit("使用方法: "+program_path.split("/")[-1]+" [ip地址] [端口] [库]") metaxploit = include_lib("/lib/metaxploit.so") if not metaxploit then metaxploit = include_lib(current_path + "/metaxploit.so") end if if not metaxploit then exit("错误: 无法在/lib路径或当前文件夹中找到metaxploit库") address = params[0] port = params[1].to_int net_session = metaxploit.net_use(地址, 端口) 如果 未找到网络会话 则 退出("错误:无法连接到网络会话") 元库 = 网络会话.转储库 扫描 = 元漏洞利用.扫描(元库) i = 0 对于 扫描结果中的每个条目 i = i+1 内存扫描 = 元漏洞利用.扫描地址(元库, 条目) 打印("<b>" + i + ". " + 条目 + "</b> n" + 内存扫描) 结束循环 打印(元库.库名称 + " v" + 元库.版本) 退出("<color=#ff0000>---扫描完成---</color>")

感染并接管网络的快速步骤指南 发现能够搜索用户局域网IP的kernel_router.so文件后: 1. 获取路由器访问权限,最好是root权限。从这里使用nmap和xploitScan扫描网络以获取计算机访问权限。之后将kernel_router.so更换为被利用的版本(此操作需要root权限)。 2. 在这台计算机上复制并破解root密码(如果尚未获取),以及一名用户的电子邮件信息(用于反向shell攻击)。 3. 使用kernel_router漏洞获取用户凭据。 完成这些步骤后,你将完全控制该网络,可向用户发送带有你希望添加到rshell服务器的有趣附件的电子邮件。

获取大量资金以升级硬件(单人模式) 获取凭证、修改学校成绩和更改警方记录是最快的黑客周转方式 反复执行这些任务是快速积累资金的最佳方法 除非你精通《Grey Hack》,否则执行其他任务需要花费更多时间,它们最好用来测试你的技能和检验所学知识。


虽然这可能会变得单调,但你可以尝试将其本身变成一个游戏,看看在特定时间内你能入侵多少个系统。 你很快就能组装好新的电脑了! 祝你好运 ✌️ 你想作为白帽黑客为警方工作吗? 可以通过在浏览器中搜索“police”来找到警方任务。 警方任务包括追踪黑客和寻找犯罪证据,这是我目前玩过的最困难的任务之一。 在这些任务中,你会进入一些非常安全的网络!这里的文件访问安全级别会提高,你至少需要最低权限才能看到任何内容! 在这些任务中,你必须使用日志查看器(LogViewer)来查找追踪黑客的信息,记录可疑的聊天记录和图片。这些任务不适合胆小的人,祝你好运 :)

捕获局域网信息 此程序需要4个参数 IP 端口 内存 十六进制值 该程序可帮助你通过反向 shell 获取特权访问。 IP 为可利用路由器的 IP,端口 = 0 若内存/十六进制值正确,此应用将提供局域网 IP 的完整信息 出现提示时,请输入所需信息。 捕获局域网 打印("<color=#34c6eb><b>用法:</b><u>可利用路由器的 IP 内存 十六进制值</u>") 打印("<color=#34c6eb>随后输入目标的局域网 IP") 如果参数长度不等于4 或 参数[0] 等于 "-h" 或 参数[0] 等于 "--help" 则退出("<b>用法:" + 程序路径分割("/")[-1] + "[ip地址][内存][十六进制值]</b>") 元漏洞利用 = 包含库("/lib/metaxploit.so") 如果不存在元漏洞利用则 元漏洞利用 = 包含库(当前路径 + "/metaxploit.if not metaxploit then exit("错误:在/lib路径或当前文件夹中找不到metaxploit库") address = params[0] port = params[1].to_int mem = params[2] memX =params[3] cryptools = include_lib("/lib/crypto.so") if not cryptools then cryptools = include_lib(current_path + "/crypto.so") end if if not cryptools then exit("错误:在/lib路径或当前文件夹中找不到crypto.so库") GetPassword = function(userPass) if userPass.len != 2 then exit("解密:语法错误") password = cryptools.decipher(userPass[1]) return password end function net_session = metaxploit.net_use( address, port ) if not net_session then exit("错误:无法连接到网络会话") metaLib = net_session.dump_lib newPass = user_input("<color=#34c6eb>输入局域网IP: ") result = metaLib.overflow(mem, memX ,newPass) if not result then exit("程序已结束") if typeof(result) == "computer" then homeFolder = result.File("/home") if not homeFolder then exit("错误: 未找到/home文件夹") userFolders = homeFolder.get_folders found = false for userFolder in userFolders bankFile = result.File("/home/" + userFolder.name + "/Config/Mail.txt") if not bankFile then continue if not bankFile.has_permission("r") then exit("错误: 无法读取文件内容。权限被拒绝") userPass = bankFile.get_content.split(":") print("找到用户的电子邮箱地址: " + userFolder.name) password = GetPassword(userPass) if not password then print("未找到任何内容...")") else print("电子邮箱账户: " + userPass[0] +" 邮箱密码: " + password) //print("电子邮箱账户: " +userPass[0]) found = true end if end for if not found then print("未找到文件")result.start_terminal end if typeObject = typeof(result) if(typeObject != "computer") then exit("错误: 预期为计算机,实际获得 " + typeObject) file = result.File(user_input("<color=#34c6eb>输入文件路径: ")) if not file then exit("错误: 文件未找到") if not file.has_permission("r") then exit("错误: 权限被拒绝。") if file.is_binary then exit("错误: 发现无效文件。") listUsers = file.get_content.split(" n") for line in listUsers userPass = line.split(":") print("正在解密用户 " + userPass[0] +"...") password = GetPassword(userPass) if not password then print("未找到任何内容...")") else print("=> " + 密码) end if end for 管理员追踪以及如何用一条命令阻止它们。 截至撰写本文时,要阻止管理员追踪,你只需确保拥有root权限凭证和另一个用户的凭证,然后在这两个账户之间来回切换几次……就是这样,不确定为什么这能阻止活动追踪,但确实有效。 不确定这是否是一个漏洞,但它在单人模式和多人模式下都有效,在多人模式中这有点强力,因为你可以隐藏在管理员保护的网络中。 用sudo切换到root,然后用sudo切换到用户,再退出回到root,重复此操作直到追踪停止。银行以及如何避免在偷窃时被抓 银行现在追踪能力极强,要想避开他们的追踪,你必须入侵目标银行的网络,找到存有银行交易系统日志(system.log)的服务器,并在完成交易后立即删除你犯罪的证据。
2026-03-22 10:00:37 发布在
Grey Hack
说点好听的...
收藏
0
0
