小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源

这篇具有很好参考价值的文章主要介绍了小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

知识点

1.PHP-全局变量$_SERVER

2.MYSQL-插入语法INSERT

3.输入输出-XSS&反射&存储

4.安全问题-XSS跨站&CSRF等

输入输出

导入sql文件:navicat导入sql数据库文件的简单操作步骤_sql文件怎么导入navicat-CSDN博客①搜索框:

<br><br><hr>
<form id="form1" action="" method="post">
  <label for="search">内容搜索:</label>
  <input type="search" name="search" id="search">
  <input type="submit" name="submit" id="submit" value="提交">
</form>
<hr>

② php代码:

<?php
include('config/conn.php');
$s=$_POST['search'];
$sql="select * from sy_guestbook where gName like '%$s%'";//%是通配符的意思,中间只要有这个字符就可以
$result=mysql_query($sql,$conn);
echo '你搜索的'."'$s'".'结果如下:';
while($row=mysql_fetch_array($result)){
    echo '<br><br><hr>';
    echo $row['id'].'<br>';
    echo $row['gName'].'<br>';
    echo $row['gLogo'].'<br>';
}

③结果 

小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源,安全,php,开发语言

④总结

在输入输出过程中有哪些安全问题:1.sql注入 2.XSS (在搜索框里如果输入js代码会被网页执行)

留言板 

和输入输出有一个共同点:输入的数据都会在页面中显示,这就是造成跨站攻击的第一个根本条件

留言:加载前面的留言内容(留言内容在数据库里)

           可以提交留言

           提交之后再加载

①html页面:用Dw直接插入表单、文本框

留言:
<form id="form1" name="form1" method="post">
  <p>
    <label for="textfield">ID:</label>
    <input type="text" name="id" id="textfield">
  </p>
  <p>
    <label for="textfield2">昵称:</label>
    <input type="text" name="name" id="textfield2">
  </p>
  <p>
    <label for="textfield3">QQ:</label>
    <input type="text" name="qq" id="textfield3">
  </p>
  <p>
    <label for="textarea">内容:</label>
    <textarea name="content" id="content"></textarea>
  </p>
  <p>
    <input type="submit" name="submit" id="submit" value="提交">
  </p>
</form>
<p>


<hr>
<p>留言内容:</p>
<hr>
<p>&nbsp; </p>

 ②后端显示留言内容

$i=@$_POST['id'];
$n=@$_POST['name'];
$q=@$_POST['qq'];
$c=@$_POST['content'];
echo $i.$n.$q.$c;

 ③将留言存入数据库

小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源,安全,php,开发语言

可以将数据库转储,查看数据库原始语句,照着写插入语句就行 

include('config/conn.php');

if(!empty($i)){
    $sql="INSERT INTO `test001` VALUES ('$i', '$n', '$q', '$c');";
    mysql_query($sql,$conn);
}

 ④对留言内容进行显示

$sql1='select * from sy_message';
$result=mysql_query($sql1,$conn);
while($row=mysql_fetch_array($result)){
    echo '<br>';
    echo 'ID:'.$row['id'].'<br>';
    echo '昵称:'.$row['name'].'<br>';
    echo 'QQ:'.$row['qq'].'<br>';
    echo '内容:'.$row['message'].'<br>';
}

 ⑤若在内容框输入:<script>alert(1)</script>,每刷新一次会产生弹窗一次(存储到数据库里了,存储型xss),而前文的输入输出产生的xss要搜索才会弹窗(反射性xss

接受我值的输入,又把值进行输出——xss

PHP全局变量-$_SERVER 

 显示ip地址,归属地,浏览器信息,访问设备等($_SERVER专门接收这些信息)

PHP: $_SERVER - Manual

test.php里进行测试-通过ua判断设备


$referer=$_SERVER['HTTP_REFERER'];
$UA=$_SERVER['HTTP_USER_AGENT'];

echo $referer."<br>";
echo $UA."<br>";

 小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源,安全,php,开发语言

 ①获取ip地址

function getIp()
{
    if ($_SERVER["HTTP_CLIENT_IP"] && strcasecmp($_SERVER["HTTP_CLIENT_IP"], "unknown")) {
        $ip = $_SERVER["HTTP_CLIENT_IP"];
    } else {
        if ($_SERVER["HTTP_X_FORWARDED_FOR"] && strcasecmp($_SERVER["HTTP_X_FORWARDED_FOR"], "unknown")) {
            $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
        } else {
            if ($_SERVER["REMOTE_ADDR"] && strcasecmp($_SERVER["REMOTE_ADDR"], "unknown")) {
                $ip = $_SERVER["REMOTE_ADDR"];
            } else {
                if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],
                        "unknown")
                ) {
                    $ip = $_SERVER['REMOTE_ADDR'];
                } else {
                    $ip = "unknown";
                }
            }
        }
    }
    return ($ip);
}
​
echo getIp()."<br>";

②老演员:站长之家

IP/IPv6查询,服务器地址查询 - 站长工具

小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源,安全,php,开发语言

 ①配置好代理

②burpsuite抓包(user-agent和站长之家的相同)

小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源,安全,php,开发语言

③修改user-agent为123,站长之家也显示123(这里就可能存在js脚本攻击,但这个案例被修复了)

小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源,安全,php,开发语言

功能越多,漏洞也就越多 

 两个小案例

1.墨者-来源页伪造

来源页伪造_网络安全_在线靶场_墨者学院_专注于网络安全人才培养

 ——禁止访问,当前页面只允许从谷歌访问

解决方法:用burp抓包更改referer字段为googel.com

CSRF(跨站点请求伪造):小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源,安全,php,开发语言

 2.ip地址伪造

获取ip-做个统计-过滤攻击

$_SERVER["HTTP_X_FORWARDED_FOR"]    接收ip

burp数据包里的X-forwarded-For:换成 127.0.0.1 -->本地,服务器自己

tcp协议ip限制:计算机上面设置--伪造不了

web协议上的ip检测可能绕过,服务器自身的协议检测伪造不了文章来源地址https://www.toymoban.com/news/detail-859083.html

到了这里,关于小迪安全 第14天:php开发-个人博客项目&输入输出类&留言板&访问IP&UA头来源的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 1.php开发-个人博客项目&文章功能显示&数据库操作&数据接收

    (2022-day12) 1-php入门,语法,提交 2-mysql 3-HTML+css ​ 博客-文章阅读功能初步实现 实现功能: 前端文章导航,点入内容显示,更改ID显示不同内容 实现步骤: 1-前端页面显示,编写(html,css) 2-数据库文章数据导入(mysql操作) 3-php操作mysql编写-php变量提交 ​ 搜:html横向导

    2024年01月20日
    浏览(58)
  • 2.php开发-个人博客项目&文件操作类&编辑器&上传下载删除读写

    ​ ​ ​ 文件上传类: form表单上传文件 --文件上传,--php接收,处理 action ---提交给谁处理 move函数移到文件 ---文件上传漏洞啊!!! ——ueditor 实现编辑器的加载 上传文件的方法: 用了编辑器,就要用编辑器去验证了(编辑器没漏洞,那就没漏洞——他有问题就有问题,

    2024年01月21日
    浏览(48)
  • 小迪安全20WEB 攻防-PHP 特性&缺陷对比函数&CTF 考点&CMS 审计实例

    #研究对象 PHP代码漏洞(代码问题) # 知识点: 1 、过滤函数缺陷绕过 2 、 CTF 考点与代码审计 一、原理-缺陷函数-使用讲解-本地 内置函数: 大部分是比较函数(过滤时使用的函数) (1)、== 与 === : 参考: PHP 浅谈 == 和=== 中,数字和字符串比较的问题。_php 数字==字符串

    2024年01月19日
    浏览(55)
  • 大学生PHP个人博客网站源码 简单个人动态网站设计模板 PHP毕业设计成品 学生PHP MYSQL日志管理系统网页

    PHP MYSQL个人博客网站作品使用php+mysql开发,系统编码简单,大学生PHP毕业设计水平。系统随处可见增删改查等基本操作,有批量删除之功能,涉及的知识点比较全面。 数据库共6张数据表,表之间有关联,设计合理;系统具有管理员和会员两种用户角色,管理员(即日志的所

    2024年02月12日
    浏览(74)
  • php版个人博客管理系统源码(文末有下载方式)

    大家好, 我是程序猿零壹。 给大家分享一款个人博客管理系统,该系统使用php+mysql开发,分为前台和后台两部分。前台实现了博客展示、友情链接、热门标签、快捷搜索、关于作者等功能;后台实现了博客管理、轮播管理、友链管理、标签管理、留言管理、权限管理等功能

    2024年02月11日
    浏览(63)
  • SSM个人博客项目

    本项目是一个前后端分离的个人博客系统,实现的主要功能有用户注册、用户登录、找回密码、验证码、文章的发布和删除、定时发布文章功能、草稿箱功能、文章列表分页功能、用户信息修改包括上传头像。利用SpingAOP实现了统一的登录验证、异常处理、统一返回格式。 从

    2024年02月13日
    浏览(51)
  • SpringBoot实战——个人博客项目

    目录 一、项目简介  二、项目整体架构 数据库模块 后端模块 前端模块  三、项目具体展示  四、项目的具体实现 1、一些准备工作 🍎数据库、数据表的创建 🍎设置数据库和MyBatis的配置 🍎将前端项目引入到当前项目中 2、登录注册模块 🍑实体类的创建 🍑前端后端交互

    2024年02月03日
    浏览(44)
  • 个人博客项目笔记_01

    前端的工程运行流程: 进入项目目录执行cmd命令: 若是第一次启动需要依次输入如下命令: 之后直接执行 npm run dev 即可! 新建maven工程blog作为父工程,然后在父工程中创建子工程blog-api 向父工程的pom.xml文件中导入依赖。 在子工程的resources文件夹下创建application.properties文

    2024年04月08日
    浏览(91)
  • 个人博客系统【项目篇】

    1.CSS 2. JS 3.HTML 4.数据库 5.pom.xml image  

    2024年02月11日
    浏览(51)
  • 小迪安全19WEB 攻防-.NET 项目&DLL 反编译&未授权访问&配置调试报错

    # ASPX 知识点: 1 、 .NET 配置调试 - 信息泄露 2 、 .NET 源码反编译 -DLL 反编译 3 、 .NET 常见安全问题 - 未授权访问 .NET:大部分都是通性漏洞;与java语言类似;本身被封装后,需要通过反编译获取之前的信息;大部分都是在windows上进行;#c是针对.net开发的,.net是一个开发框架;

    2024年01月21日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包