ctf---curl的使用

**

bugku-web基础$_GET

**

curl http://123.206.87.240:8002/get/?what=flag

在这里插入图片描述
在这里插入图片描述

curl -I  http://123.206.87.240:8002/get/

在这里插入图片描述

**

bugku-web基础$_POST

**

curl -X POST  http://123.206.87.240:8002/post/ -d "what=flag"

在这里插入图片描述
**

实验吧-貌似有点难

**
查看源代码得知我们需要修改请求头的ip(即伪造ip)

curl http://ctf5.shiyanbar.com/phpaudit/ -H "x-forwarded-for:1.1.1.1"

得到flag:
在这里插入图片描述
**

实验吧-天下武功为快不破

**
题目:
There is no martial art is indefectible, while the fastest speed is the only way for long success.
----You must do it as fast as you can!----

curl -I http://ctf5.shiyanbar.com/web/10/10.php  | grep FLAG  //-I  获取响应头
curl -I http://ctf5.shiyanbar.com/web/10/10.php  -s | grep FLAG  //-s slicet 不会出现详细信息。
 curl -I http://ctf5.shiyanbar.com/web/10/10.php -s | grep FLAG | awk '{print $2}'  //awk命令 print是打印的意思,$2截取第一行
 。以空格为分隔符,自动分行。
flag=$(curl -I http://ctf5.shiyanbar.com/web/10/10.php -s | grep FLAG | awk '{print $2}')
echo $flag | base64 -d  2> /dev/null  //在这里的意思是就是把base64:无效去除掉 

如图:
在这里插入图片描述
在这里插入图片描述
命令行交互:

flag=$(curl -I http://ctf5.shiyanbar.com/web/10/10.php -s | grep FLAG | awk '{print $2}') 
//把命令执行的结果复制给flag这个变量。
echo $flag
echo $flag | base64 -d 2> /dev/null
echo $flag | base64 -d | cut -d":" -f2 //这里不能使用awk命令,因为语句中没有空格作为分割符。-d指定分割符 -f指定列数
flag1=$(echo $flag | base64 -d | cut -d":" -f2)
curl http://ctf5.shiyanbar.com/web/10/10.php -X POST -d "key:flag1“

上脚本:

#!/bin/bash

flag=$(curl -I http://ctf5.shiyanbar.com/web/10/10.php | grep FLAG | awk '{print $2}')
data=$(echo $flag | base64 -d 2> /dev/null | cut -d":" -f2)
curl -X POST http://ctf5.shiyanbar.com/web/10/10.php -d "key=$data"

在这里插入图片描述
总结:
发送带参数的Get请求,可以将参数直接写在URL中。

root@kali:~# curl http://123.206.87.240:8002/get/?what=flag

如果要发送POST请求,需要用-X选项指定。

root@kali:~# curl http://123.206.87.240:8002/post/ -X POST

通过-d选项,可以指定POST要发送的参数:

root@kali:~# curl http://123.206.87.240:8002/post/ -X POST -d "what=flag"

注意:curl不能做有session会话的题。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值