目录

Web前置技能

一、HTTP协议

1、基础认证

2、302跳转

3、Cookie

4、请求方式

5、响应包源代码


个人题解记录,不喜勿喷

Web前置技能

一、HTTP协议

1、基础认证

在HTTP中,基本认证(英语:Basic access authentication)是允许http用户代理(如:网页浏览器)在请求时,提供`用户名` 和`密码`的一种方式。详情请查看 https://zh.wikipedia.org/wiki/HTTP基本认证

直接上脚本

#!/usr/bin/python
# -*- coding: utf-8 -*-
# -- author : valecalida --
# edit_time: 2020/3/19 下午6:43
from urllib.request import HTTPBasicAuthHandler, build_opener, HTTPPasswordMgrWithDefaultRealm
from urllib.error import URLErrorusername = 'admin'
f = open('10_million_password_list_top_100.txt', 'r')
url = "http://challenge-b14d74b2bbccc186.sandbox.ctfhub.com:10080/flag.html"
for line in f.readlines():password = line.strip()instance = HTTPPasswordMgrWithDefaultRealm()instance.add_password(None, url, username, password)auth_handler = HTTPBasicAuthHandler(instance)opener = build_opener(auth_handler)try:res = opener.open(url)html = res.read().decode('utf-8')print("用户名:admin 密码:%s" % password, "是正确答案")print("flag为:", html)breakexcept URLError as e :print("用户名:admin 密码:%s" % password, "不是正确答案,原因是:", e.reason)
f.close()

这里为了直观的看到密码,我这里打印了一下,不然可以不打印

运行结果是

用户名:admin 密码:123456 不是正确答案,原因是: Unauthorized
用户名:admin 密码:password 不是正确答案,原因是: Unauthorized
·
·
·
省
略
很
多
行
·
·
·
用户名:admin 密码:andrew 不是正确答案,原因是: Unauthorized
用户名:admin 密码:tigger 是正确答案
flag为: ctfhub{e33b1ac90d8205e95a7dc326726cd1ffe080c673}

或者使用下面这个脚本也可以

#!/usr/bin/python
# -*- coding: utf-8 -*-
# -- author : valecalida --
# edit_time: 2020/3/20 下午2:27
import requests
from requests.auth import HTTPBasicAuth
username = 'admin'
f = open('10_million_password_list_top_100.txt', 'r')
url = "http://challenge-8d232fa7f09a8d27.sandbox.ctfhub.com:10080/flag.html"
for line in f.readlines():password = line.strip()res = requests.get(url=url, auth = HTTPBasicAuth(username, password))if res.status_code == 200:print(res.text)break# else:#     continue

2、302跳转

#!/usr/bin/python
# -*- coding: utf-8 -*-
# -- author : valecalida --
import requests
url = "http://challenge-061acc63c590e9b4.sandbox.ctfhub.com:10080/index.php"
r = requests.get(url,allow_redirects=False)
print(r.text)

3、Cookie

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# --author:valecalida--
import urllib.request
url = "http://challenge-dd1412b01a02d5dd.sandbox.ctfhub.com:10080/"header = {"Cookie": "admin=1"
}
req = urllib.request.Request(url, headers=header, method="GET")
res = urllib.request.urlopen(req)
print(res.read().decode('utf-8'))

4、请求方式

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# --author:valecalida--
# Edit time: 2020/3/19 19:59
from urllib import request
import re
"""HTTP Method is GETUse CTF**B Method, I will give you flag.Hint: If you got 「HTTP Method Not Allowed」 Error, you should request index.php.
"""
rr = re.compile(r'\bctfhub{.*}', re.I)
url = "http://challenge-c2631c2870dc91e1.sandbox.ctfhub.com:10080/index.php"
req = request.Request(url=url, method="CTFHUB")
res = request.urlopen(req)
print(rr.findall(res.read().decode('utf-8'))[0])

5、响应包源代码

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# --author:valecalida--
# Edit time: 2020/3/19 20:56
import re
import urllib.request
rr = re.compile(r'\bctfhub{.*}', re.I)url = "http://challenge-226bf952c446eb7c.sandbox.ctfhub.com:10080/"res = urllib.request.urlopen(url)
print(rr.findall(res.read().decode('utf-8'))[0])

未完待续~~

CTFHUB Web前置技能 题解记录(HTTP部分)相关推荐

  1. CTFHub技能树web(持续更新)--web前置技能(HTTP协议)--302跳转

    302跳转 首先题目很明显的告诉我们存在页面重定向,所以我们现抓包: 在历史记录里面我们看到了这个302跳转,在他的回包里面,我们看到了这个Location是index.php,那么我们登陆到这里面看 ...

  2. CTFHub-web前置技能-请求方式、302跳转、cookie、基础认证、响应包源代码

    CTFHub-web前置技能 1.请求方式 方法一:burp抓包 将GET改为CTFHUB 放包 方法二:curl 命令 利用 curl 命令对本题求解在命令行中输入 相关知识 号 方法 描述 1 G ...

  3. Web前端理论知识记录

    Web前端理论知识记录 Elena · 5 个月前 cookies,sessionStorage和localStorage的区别? sessionStorage用于本地存储一个会话(session)中 ...

  4. Dynamics CRM2016 Web API之创建记录

    前篇介绍了通过primary key来查询记录,那query的知识点里面还有很多需要学习的,这个有待后面挖掘,本篇来简单介绍下用web api的创建记录. 直接上代码,这里的entity的属性我列了几 ...

  5. python爬虫的技能_python-爬虫技能升级记录

    ====== python-爬虫技能升级记录 ====== ===== (一)感知爬虫及爬取流程 ===== 从简单存取一个页面到 爬取到大量的定量数据,对技术要求更高,以百度百科数据爬取为入门练手项 ...

  6. 20201007:力扣209周周赛题解记录(上)

    力扣209周周赛题解记录(上) 题目 思路与算法 代码实现 复杂度分析 题目 特殊数组的特征值 奇偶树 思路与算法 第一题单纯的暴力就行,应该是可以用二分之类的改善复杂度,没必要赘述,直接上暴力遍历, ...

  7. 20200922:leetcode35周双周赛题解记录(下)

    leetcode35周双周赛题解记录(下) 题目 思路与算法 代码实现 复杂度分析 题目 3.1590. 使数组和能被 P 整除 4.1591. 奇怪的打印机 II 思路与算法 第三题前缀和衍生题目, ...

  8. 20200819:力扣202周周赛题解记录

    力扣202周周赛题解记录 题目一:[存在连续三个奇数的数组](https://leetcode-cn.com/problems/three-consecutive-odds/) 代码实现 题目二:[使 ...

  9. 20200815:力扣201周周赛题解记录下

    力扣201周周赛题解记录下 题目 思路与算法 代码实现 题目 和为目标值的最大数目不重叠非空子数组数目 1547. 切棍子的最小成本 在这里插入图片描述 思路与算法 第3题还是一个简单的模拟,用set ...

  10. 20200814:力扣201周周赛题解记录上

    力扣201周周赛题解记录上 题目 思路与算法 代码实现 写在最后 题目 整理字符串 找出第 N 个二进制字符串中的第 K 位 思路与算法 第一题这种类似消消乐的东西都是直接用栈来实现的,注意代码细节 ...

最新文章

  1. 用Leangoo敏捷看板工具管理 产品线路图
  2. Android NDK开发method GetStringUTFChars’could not be resolved
  3. 收费标准_互联网推广收费标准
  4. Oracle的奇葩设置之非归档模式与RMAN备份
  5. MMDetection-数据准备
  6. Android开发之git命令创建tag提交远程仓库的方法(图文教程)
  7. java项目加减乘除验证码_课堂Java小程序(加减乘除与验证码)
  8. layabox2:打地鼠(地鼠显示/停留/受击/消失)
  9. 你给客户报完价,客户就没消息了,什么原因呢?
  10. MySQL行级锁和表级锁
  11. 专业版谷歌地球地图永久版带手机版App
  12. 螺钉 螺母 硬币三种物体的识别
  13. c语言算摄氏温度和绝对温度,将华氏度转换为绝对温度C语言
  14. python火车票自我编写_自己动手写100行Python代码抢火车票!
  15. 计算机二级题百度云,计算机二级office题库
  16. 【面试题】前端人70%以上 不了解的promise/async await
  17. 如何解决条码打印机隔张打印问题
  18. 乾坤符和鸿蒙符,『玩家攻略』主力兵符的不二选择!轮回符、不灭符分析
  19. html制作网易云音乐登录系统,JavaScript实现[网易云音乐Web站登录窗口]拖拽功能...
  20. android 蓝牙cs8510,【华为ROM大赛】华为G610-u00移植联想超级VIBEROM你值得拥有(兼容10月机)cs85d2d9a...

热门文章

  1. 统计学习方法读书笔记16-SVM支持向量机
  2. 书单丨上过太空的JavaScript用着就是香!
  3. 让DB2跑得更快——DB2内部解析与性能优化
  4. .NET程序员面试指南:解释委托的基本原理
  5. 【机器学习笔记】使用lightgbm画并保存Feature Importance
  6. python输出文本文件_Python进阶02 文本文件的输入输出
  7. 二、optimizer_trace基本使用
  8. oracle数据库如何写翻页_ORACLE翻页SQL语句
  9. Property “pageNumber“ was accessed during render but is not defined on instance.
  10. 7-4 输出三角形字符阵列 (15 分)