webchacking.kr 第5题

打开题目发现了两个按钮,分别是Login和join

打开Login发现url是http://webhacking.kr/challenge/web/web-05/mem/login.php的 我们把login.php删掉发现了一个index of的目录,里面有一个join的php文件

打开发现黑的没有边际,右键源代码发现了猫腻,这里我把js代码翻译了下,后来发现其实直接f12编译下就ok了 2333333

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
documnent.cookie
if(eval(document.cookie)==-1)
{
bye;
}
else(eval(document.URL).indexOf(mode=1))==-1
{
alert('access_denied');history.go(-1);
}
else{
document.write('<font size=2 color=white>Join</font><p>');
document.write('.<p>.<p>.<p>.<p>.<p>');
document.write('<form method=post action='NaNoin.php>');
document.write('<table border=1><tr><td><font color=gray>id</font></td><td><input type=text name='id' maxlength=5></td></tr>');
document.write('<tr><td><font color=gray>pass</font></td><td><input type=text name='NaNw' maxlength=10></td></tr>');
document.write('<tr align=center><td colspan=2><input type=submit></td></tr></form></table>');
}

把第三个else中代码进行执行就得到一个登陆框

做到这里心里有点小激动,然后噫~~~~ 好像限制了字符长度,没想到真是

用burp进行抓包,加点空格突破他的5的长度限制

发现注册成功

返回开头的Login按钮那,登录 过关

webchacking.kr 第24题

打开题目发现是一个关于ip的题,照常右键查看源代码发现index.phps

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?

extract($_SERVER);
extract($_COOKIE); if(!$REMOTE_ADDR) $REMOTE_ADDR=$_SERVER[REMOTE_ADDR]; $ip=$REMOTE_ADDR;
$agent=$HTTP_USER_AGENT; if($_COOKIE[REMOTE_ADDR])
{
$ip=str_re 大专栏  waterplace("12","",$ip);
$ip=str_replace("7.","",$ip);
$ip=str_replace("0.","",$ip);
} echo("<table border=1><tr><td>client ip</td><td>$ip</td></tr><tr><td>agent</td><td>$agent</td></tr></table>"); if($ip=="127.0.0.1")
{
@solve();
} else
{
echo("<p><hr><center>Wrong IP!</center><hr>");
}
?>

看着有点长,其实很简单就是让ip等于127.0.0.1就可以了

直接。。。。 坑 试了很多127.0.0.1发现不行,原来有过滤233333

一条js代码搞定

1
document.cookie ="REMOTE_ADDR = 112277..00..00..1;";

webchacking.kr 第27题

打开题目右键发现index.phps

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?
if($_GET[no])
{ if(eregi("#|union|from|challenge|select|(|t|/|limit|=|0x",$_GET[no])) exit("no hack"); $q=@mysql_fetch_array(mysql_query("select id from challenge27_table where id='guest' and no=($_GET[no])")) or die("query error"); if($q[id]=="guest") echo("guest");
if($q[id]=="admin") @solve(); } ?>

从源码可以看出我们需要让id=admin才能过关,但是id这个没找到,但是有一个q变量,所以我们想办法把id给他变成admin就可以了

分析源码得到它过滤了一些常用的字段,比如说“ = ” 这个常用的东东 这里可以使用like进行替代

1
$q=@mysql_fetch_array(mysql_query("select id from challenge27_table where id='guest' and no=($_GET[no])")) or die("query error")id='guest' and no=($_GET[no])")) or die("query error");

这里我们必须select id from challenge27_table where id=’guest’ and no= 返回错误,否则就无法获得admin这个字段了,因为他id已经等于guest

尝试payload

-1) or no like 0 – 这个–后边有一个空格

它返回了查询错误,接着试

-1) or no like 1 –

发现返回了guest,说明构造的sql语句执行了,guest的id=1 那么admin的id可能为2嘛

继续试

-1) or no like 2 –

成功了(这个是我做过一遍,所以会是这样的)

water的更多相关文章

  1. [LeetCode] Pacific Atlantic Water Flow 太平洋大西洋水流

    Given an m x n matrix of non-negative integers representing the height of each unit cell in a contin ...

  2. [LeetCode] Trapping Rain Water II 收集雨水之二

    Given an m x n matrix of positive integers representing the height of each unit cell in a 2D elevati ...

  3. [LeetCode] Water and Jug Problem 水罐问题

    You are given two jugs with capacities x and y litres. There is an infinite amount of water supply a ...

  4. [LeetCode] Trapping Rain Water 收集雨水

    Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...

  5. [LeetCode] Container With Most Water 装最多水的容器

    Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). ...

  6. 如何装最多的水? — leetcode 11. Container With Most Water

    炎炎夏日,还是呆在空调房里切切题吧. Container With Most Water,题意其实有点噱头,简化下就是,给一个数组,恩,就叫 height 吧,从中任选两项 i 和 j(i <= ...

  7. 【leetcode】Container With Most Water

    题目描述: Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ...

  8. [LintCode] Trapping Rain Water 收集雨水

    Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...

  9. [LintCode] Container With Most Water 装最多水的容器

    Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai).  ...

  10. LeetCode#11. Container With Most Water

    问题描述 Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ...

随机推荐

  1. 异常处理和UDP协议

    一.什么是异常? 程序在运行过程中出现了不可预知的错误,并且该错误没对应的处理机制,那么就会以异常的形式表示出来, 造成的影响就是整个程序无法再正常的运行,抛出异常. 二.异常的结构: 1:异常的类型 ...

  2. linux下U盘变成只读文件系统的修复

    问题描述: U盘插入linux下后变成了只读文件系统,不能再往u盘里拷贝文件. 总结:产生这个问题的原因可能是u盘文件系统损坏,操作系统为了防止它损坏系统,将它设置成了只读 修复方法: 在window ...

  3. ZOJ-1610 Count the Colors(线段树染色,求染色段)

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1610 https://vjudge.net/contest/318019# ...

  4. 006.前端开发知识,前端基础CSS(2020-01-21)

    来源:第五天  01盒子水平居中 一.盒子中文字控制: 1.text-align: center; /*可以让盒子内容(文字 行内元素 行内块元素)居中对齐*/ 二.让盒子水平居中对齐: 方法1.ma ...

  5. python学习笔记(18)字典和json 的区别 和转换

    字典和json 的区别 和转换 前言:字典和json非常像.接下来比较一下两者的异同 先看一下字典的写法: a = {'a':'1', 'b':'2', 'c':'3' } 再看一下json的写法: ...

  6. [LC] 117. Populating Next Right Pointers in Each Node II

    Given a binary tree struct Node { int val; Node *left; Node *right; Node *next; } Populate each next ...

  7. UMLet的使用与类图的设计

    本实验是为后续实验做准备的.在本书中,各个程序实例都要画类图,所以读者必须掌握用某种UML建模工具来画类图,本书选择 UMLet 作为 UML 的建模工具.实验目的本实验的主要目的如下. 理解类的基本 ...

  8. 从程序到系统:建立一个更智能的世界——记Joseph Sifakis“21世纪的计算”大会主题演讲

    Sifakis"21世纪的计算"大会主题演讲" title="从程序到系统:建立一个更智能的世界--记Joseph Sifakis"21世纪的计算&q ...

  9. 手机遥控Office,变身演讲达人

    编者按:在商业演讲中,需要在PPT/Word/Excel文件中切换以达到最佳演讲效果-Office Remote可帮助Windows Phone变身Office的智能遥控.以蓝牙控制电脑,触屏操作多种 ...

  10. [LC] 225. Implement Stack using Queues

    Implement the following operations of a stack using queues. push(x) -- Push element x onto stack. po ...