笔记:

PHP函数isset(): 检测变量是否设置

只能用于变量,传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数

格式:  isset ( mixed var [, mixed var [, ...]] ) 

    若变量不存在则返回 FALSE
    若变量存在且其值为NULL,也返回 FALSE
    若变量存在且值不为NULL,则返回 TURE

    同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE

== :  比较运算符号  不会检查条件式的表达式的类型

===:  恒等计算符 , 同时检查表达式的值与类型。(会检查表达式类型,如bool)

die()函数  :  停止程序运行,输出内容

sha1()函数: 计算字符串 "Hello" 的 SHA-1 散列。默认的传入参数类型是字符串型

W3School: http://www.w3school.com.cn/php/func_string_sha1.asp

例:

<?php
$str = "Shanghai";
echo sha1($str);
?>

链接: http://www.shiyanbar.com/ctf/1787

右击查看源代码,发现这一段:

登录成功条件: (1)传入name,password的值(2)name和password的值不能相等(3)  name和password的sha1加密散列值相等

前两个条件容易实现,关键是第三个条件,怎样实现呢?

思路: sha1()函数默认的传入参数类型是字符串型,可以传入其他类型,使其返回值为false。如数组类型。

实现: 构造url:  http://ctf4.shiyanbar.com/web/false.php?name[]=a&password[]=b (a,b只要不等即可),提交即可获得flag

实验吧Web-FALSE的更多相关文章

  1. 2017-2018-2 20155225《网络对抗技术》实验九 Web安全基础

    2017-2018-2 20155225<网络对抗技术>实验九 Web安全基础 WebGoat 1.String SQL Injection 题目是想办法得到数据库所有人的信用卡号,用Sm ...

  2. 2017-2018-2 20155225《网络对抗技术》实验八 Web基础

    2017-2018-2 20155225<网络对抗技术>实验八 Web基础 1.Web前端HTML 输入命令apachectl start打开apahce,并使用netstat -aptn ...

  3. 20155201 网络攻防技术 实验八 Web基础

    20155201 网络攻防技术 实验八 Web基础 一.实践内容 Web前端HTML,能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. We ...

  4. 20155222卢梓杰 实验八 Web基础

    实验八 Web基础 1.安装apache sudo apt-get install apache2 2.启动apache service apache2 start 3.使用netstat -tupl ...

  5. 实验八 Web基础

    实验八 Web基础 1.安装apache sudo apt-get install apache2 2.启动apache service apache2 start 3.使用 netstat -tup ...

  6. 实验八 Web基础 SQL注入原理

    实验八 Web基础 实验要求 (1)Web前端HTML 能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. (2)Web前端javascipt ...

  7. 实验吧web题:

    实验吧web题: 这个有点简单 因为刚了解sqlmap,所以就拿sqlmap来练练手了 1,先测试该页面是否存在sql注入漏洞 2.找到漏洞页面,复制url,然后打开sqlmap 先查看当前数据库 然 ...

  8. 20155201 网络攻防技术 实验九 Web安全基础

    20155201 网络攻防技术 实验九 Web安全基础 一.实践内容 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 二.报告内容: 1. 基础问题回答 1)SQL注入攻击 ...

  9. 20155222卢梓杰 实验九 Web安全基础

    实验九 Web安全基础 今天不多bb,打开webgoat就是干好吧 1.简单字符串sql注入 可以看到这个实验说明是 "下表允许用户查看其信用卡号码.尝试插入一个SQL字符串,以显示所有信用 ...

  10. 20155235 《网络攻防》 实验九 Web安全基础

    20155235 <网络攻防> 实验九 Web安全基础 实验内容 SQL注入攻击 XSS攻击 CSRF攻击 WebGoat WebGoat是OWASP组织研制出的用于进行web漏洞实验的应 ...

随机推荐

  1. jQuery核心结构简单分析

    以下分析均采取沙箱模式 (function (window) { //为了提高性能把需要的变量统一提前声明 var arr = [], push = arr.push; //为区别jQuery,此文章 ...

  2. NOIP2014-提高组初赛C语言解析(选择填空题)

    第二十届全国青少年信息学奥林匹克联赛初赛 一.单项选择题(共 20 题,每题 1.5 分,共计 30 分.每题有且仅有一个正确选项) 1. 以下哪个是面向对象的高级语言( B ) A.汇编语言   B ...

  3. 关于_cmd

    实际上是该方法名(@selector的名称). 比如: - (void)someCategoryMethod { NSString *string = objc_getAssociatedObject ...

  4. C++ 中的计时器

    在Java中,有时候会要测试程序的性能,所以会采用System.currentTimeMillis()等类库函数去测试时间开销. 在C++中同样可以完成此功能. 头文件: #include<ct ...

  5. on事件绑定阻止冒泡的问题

    当使用on进行事件绑定时当要给document绑定click,而子元素要禁止冒泡,那么子元素里面的子元素的click事件就会无效了, 下面无效版: $('#queue').on('click', '. ...

  6. Jmeter(四)-断言/检查点

    断言就类似LoadRunner中的检查点.对上一个请求返回的信息,做字符串.数据包大小.HTML.XML.图片等做判断,确保返回的信息的准确性. 添加响应断言:欢迎您 如果登陆页登陆成功,则后台会返回 ...

  7. Ubuntu下Git的使用之创建版本库

    创建版本库 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以 ...

  8. css 冷门样式大全

    1. 文字多了 省略后面  后面加省略号 p{width:300px; border:solid 1px #000; padding:10px; font:22px/22px "微软雅黑&q ...

  9. DataGrid 导出数据到 Excel

    Private Sub GridToExl_Click() On Error Resume Next If DataGrid1.Columns.Count = 0 Then MsgBox " ...

  10. 【Time系列三】简单的计时器(秒表)

    之前在 "for与while的洪荒之力" 中介绍到计时器,不过那样弄感觉好麻烦啊, 碰巧昨天学Java的时候,讲到求余可以用来求时间 ! for与while链接: http://w ...