今年十八,喜欢ctf-web

简介: 今年十八,喜欢ctf-web

前言


🍀作者简介:被吉师散养、喜欢前端、学过后端、练过CTF、玩过DOS、不喜欢java的不知名学生。


🫒每日emo:等我把脸皮磨厚


我今天就说几个超级简单的web题目,题目来自bugku


1、滑稽


想想最简单的web题目是啥


F12直接出flag

刚进来就是铺天盖地的滑稽


直接F12,

flag轻松获取


2、计算器


进来之后是个这玩意,56+26


有点难为人了,我直接通过计算器得知等于82


往里输呗

一输,发现不对劲,只能输入一个啊,那问题一定出在前端,看看源代码

maxlength(最大长度)='1'


直接改成2

输完点验证

看到这是不是觉着web挺简单的了,别急,难的在后边


知道get/post吧


3、GET


进来之后,发现是这么个玩意,简单的php代码


通过get方式读取数据存储到what变量里,然后输出


如果what==flag,输出flag


get请求最大的特点就是喜欢把乱七八糟的东西放到链接里,那我直接反客为主

成功获得flag


4、POST


post就不像get那么简单啦。


但是有简便方法,我不讲正常方法了。


正常就是通过post传递一个what=flag的参数进去,可以通过hackbar来实现

简便方法


winR cmd


curl -d what=flag + 链接


以下仅做了解

参数 描述
-I/--head 只显示传输文档,经常用于测试连接本身
-o/--output 把输出写到该文件中,必须输入保存文件名
-O/--remote-name 把输出写到该文件中,保留远程文件的文件名
-F/--form 模拟表单提交
-s/--silent 静默模式,不输出任何东西
-S/--show-error 显示错误,在选项 -s 中,当 curl 出现错误时将显示
-L/--location 跟踪重定向
-f/--fail 不输出错误
-n/--netrc 从netrc文件中读取用户名和密码
--netrc-optional 使用 .netrc 或者 URL来覆盖-n
--ntlm 使用 HTTP NTLM 身份验证
-N/--no-buffer 禁用缓冲输出
-p/--proxytunnel 使用HTTP代理
--proxy-anyauth 选择任一代理身份验证方法
--proxy-basic 在代理上使用基本身份验证
--proxy-digest 在代理上使用数字身份验证
--proxy-ntlm 在代理上使用ntlm身份验证
-P/--ftp-port 使用端口地址,而不是使用PASV
-M/--manual 显示全手动
-Q/--quote 文件传输前,发送命令到服务器
-r/--range 检索来自HTTP/1.1或FTP服务器字节范围
--range-file 读取(SSL)的随机文件
-R/--remote-time 在本地生成文件时,保留远程文件时间
--retry 传输出现问题时,重试的次数
--retry-delay 传输出现问题时,设置重试间隔时间
--retry-max-time 传输出现问题时,设置最大重试时间
--socks4 用socks4代理给定主机和端口
--socks5 用socks5代理给定主机和端口
-t/--telnet-option Telnet选项设置
--trace 对指定文件进行debug
--trace-ascii Like 跟踪但没有hex输出
--trace-time 跟踪/ 详细输出时,添加时间戳
-T/--upload-file 上传文件
-u/--user 设置服务器的用户和密码
-U/--proxy-user 设置代理用户名和密码
-V/--version 显示版本信息
-w/--write-out [format] 什么输出完成后
-x/--proxy 在给定的端口上使用HTTP代理
-X/--request 指定什么命令
-y/--speed-time 放弃限速所要的时间。默认为30
-Y/--speed-limit 停止传输速度的限制,速度时间'秒
-z/--time-cond 传送时间设置
-0/--http1.0 使用HTTP 1.0
-1/--tlsv1 使用TLSv1(SSL)
-2/--sslv2 使用SSLv2的(SSL)
-3/--sslv3 使用的SSLv3(SSL)
--3p-quote like -Q for the source URL for 3rd party transfer
--3p-url 使用url,进行第三方传送
--3p-user 使用用户名和密码,进行第三方传送
-4/--ipv4 使用IP4
-6/--ipv6 使用IP6
-#/--progress-bar 用进度条显示当前的传送状态


5、你必须让它停下


简单描述一下,这是个不断刷新的网页,只有当图片成功刷出来的时候我们才有机会获得flag


ctrl u直接看源代码,优点是这里不会一直刷新

直接F5刷新,省心省力


当图片为10.jpg的时候,后面成功显示flag


6、头等舱


进来之后啥也没有,源代码也是


头等舱。。。


多少沾点。。不是,


多少和头文件有点关系



7、本地管理员



先F12

base64去网站解一下

啥也别说了,这是密码。


账号是啥?


管理员系统,还能有啥


admin呗


进去之后被封IP了


再思考一下。。。


本地管理员。。


本地。


打开软件

在头文件里把IP地址改为本地127.0.0.1/localhost


8、成绩查询


进来,第一眼,sql注入!


找raw

把raw里的东西存在一个文件里,我命名为1.txt然后sqlmap跑

sqlmap.py -r 1.txt -p id current-db


-r – > 加载一个文件


-p – > 指定参数


-– current-db – > 获取当前数据库名称

爆出数据库名叫skctf


接着爆表


sqlmap.py -r 1.txt -p id -D skctf --tables

-D我个人觉着就是database的意思哈,方便记忆。


--tables就是爆表

爆出来有个叫fl4g的,差不多flag就在里面了


接着爆字段

sqlmap.py -r 1.txt -p id -D skctf -T fl4g --columns

-T就是tables


columns是字段

接下来爆字段里的内容

sqlmap.py -r 1.txt -p id -D skctf -T fl4g -C skctf_flag --dump

成功爆出flag

目录
相关文章
|
Java PHP
记录一道ctf web题
记录一道ctf web题
|
6月前
|
存储 JavaScript 前端开发
web学习笔记(十八)
web学习笔记(十八)
22 0
|
6月前
|
JavaScript 前端开发 Java
web学习笔记(十九)
web学习笔记(十九)
23 0
|
6月前
|
域名解析 Linux PHP
[CTF]ctfshow web入门
[CTF]ctfshow web入门
|
存储 消息中间件 JavaScript
科普:什么是Web3.0
科普:什么是Web3.0
|
6月前
|
前端开发 Java 计算机视觉
《CTF攻防世界web题》之我什么都不会(1)
《CTF攻防世界web题》之我什么都不会(1)
59 0
|
存储 安全 物联网
Web3技术入门向科普
Web3是指下一代互联网,它基于区块链技术,将各种在线活动更加安全、透明和去中心化。Web3是一个广义的概念,它包括了很多方面,如数字货币、去中心化应用、智能合约等等。在这篇文章中,我们将重点讨论Web3的入门知识,帮助大家更好地了解这个领域。
1096 0
|
安全 JavaScript Shell
bugku web篇(二)
bugku web篇(二)
248 0
bugku web篇(二)
|
Linux PHP 开发工具
bugku web篇(一)
bugku web篇(一)
165 0
bugku web篇(一)
|
SQL 安全 PHP
bugku web篇(三)
bugku web篇(三)
111 0
bugku web篇(三)