3.php开发-个人博客项目输入输出类留言板访问IPUA头来源

news2025/1/12 19:42:42

目录

知识点 :

输入输出

配置环境时:

搜索框:

留言板:

留言板的显示(html):

php代码显示提交的留言:

写入数据库

对留言内容进行显示:

php全局变量-$_SERVER

检测来源

墨者-来源页 伪造

墨者-ip地址伪造



知识点 :

1、PHP-全局变量$_SERVER

2、MYSQL-插入语法INSERT

3、输入输出+xss&反射&存储

4、安全问题-xss跨站&CSRF等


输入输出

输入的东西能在网站上显示。

配置环境时:

数据库的文件要写对账号密码,指定一个库。(conn.php)

php代码输出的时候要指定sql语句,和表里的字段。

搜索框:

——搜索功能,

搜索框的编写,(表单)

<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>

php实现搜索数据的显示:

<?php
include('config/conn.php');
$s=$_POST['search'];
$sql="select * from staff where name like '%$s%'";
$result=mysql_query($sql,$conn);
echo '你搜索的'."'$s'".'结果如下:';
while($row=mysql_fetch_array($result)){
    echo '<br><br><hr>';
    echo $row['number'].'<br>';
    echo $row['name'].'<br>';
    echo $row['post'].'<br>';
}
?>

——输入输出的关键字,--->xss

留言板:

——留言内容在数据库里面
​
——加载前面的前面的内容
​
——可以提交留言
​
——提交留言之后会再加载
留言板的显示(html):
留言:
<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>
php代码显示提交的留言:

接受提交内容,并显示

<p>留言内容:</p>
<?php
header("Content-type: text/html; charset=utf-8");
include('config/conn.php');
​
$i=@$_POST['id'];
$n=@$_POST['name'];
$q=@$_POST['qq'];
$c=@$_POST['content'];
​
echo $i,$n,$q,$c.'<hr>';
写入数据库

——包含数据库文件(conn.php)

——插入数据

--根据导出的sql脚本文件---写sql语句

写入数据库:

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

对留言内容进行显示:

$sql1='select * from test001';
$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['content'].'<br>';
}

php全局变量-$_SERVER

——显示ip地址,归属地。。。

$_SERVER

--通过UA判断设备

搜: PHP $_SERVER

PHP中$_SERVER的详细用法:

PHP中$_SERVER的详细用法_$_server['http_accept_language']-CSDN博客

——获取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时,回显的系统,会看到我的信息,说明他接收了,这时候就把UA头换成js语句,看是否存在洞洞。

--功能越多,洞洞越多。

检测来源

$referer=$_SERVER['HTTP_REFERER'];
$ua=$_SERVER['HTTP_USER_AGENT'];
​
echo $referer."<br>";
echo $ua."<br>";

喜欢吃西瓜~

同源策略:同一ip发送的请求。

墨者-来源页 伪造

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

——直接访问属于你没有来源,(空的)从哪里来的!!

改一下来源就好了。

————主要防CSRF攻击,

墨者-ip地址伪造

--人家获取你的ip:做个统计,过滤攻击(自省的来,同乡好啊)。

$_SERVER["HTTP_X_FORWARDED_FOR"]    接收

ip地址换成 127.0.0.1 -->本地,服务器自己。。。

——服务器ip限制,

——其它协议限制:

http协议,

tcp协议(计算机本身)--伪造不了

————网站上的ip检测,可能绕过;服务器自身的协议检测,伪造不了,GG。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1401540.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【复现】Hytec Inter HWL 2511 SS路由器RCE漏洞_25

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一&#xff1a; 四.修复建议&#xff1a; 五. 搜索语法&#xff1a; 六.免责声明 一.概述 Hytec Inter HWL 2511 SS是日本Hytec Inter 公司的一款工业级 LTE 路由器&#xff0c;可用于远程数据传输&#xff0c;例如收集传…

网络安全(初版,以后会不断更新)

1.网络安全常识及术语 资产 任何对组织业务具有价值的信息资产&#xff0c;包括计算机硬件、通信设施、IT 环境、数据库、软件、文档 资料、信息服务和人员等。 漏洞 上边提到的“永恒之蓝”就是windows系统的漏洞 漏洞又被称为脆弱性或弱点&#xff08;Weakness&#xff09;&a…

class_15:虚函数

#include <iostream> #include <string> using namespace std;//基类,父类 class Vehicle{ public:string type;string contry;string color;double price;int numOfWheel;virtual ~Vehicle(){};//类中有虚函数&#xff0c;析构函数一般也写成虚函数virtual voi…

第135期 一周游历(上)(20240120)

数据库管理135期 2024-01-20 第135期 一周游历(上)&#xff08;20240120&#xff09;1 PolarDB开发者大会2 工作3 Oracle甲骨文4 Oracle ACE总结 第135期 一周游历(上)&#xff08;20240120&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#xff08;尹海文&#xff09; Oracle AC…

基于Servlet建立表白墙网站

目录 一、设计思想 二、设计表白墙页面&#xff08;前端--VSCode&#xff09; 1、效果图 2、html部分&#xff08;网页上有哪些内容&#xff09; 3、css部分&#xff08;页面内容的具体样式&#xff09; 4、js部分&#xff08;页面行为&#xff09; 三、借助Servlet实现客…

PageHelper分页插件的使用

1.引入依赖 <!-- pagehelper 分页插件 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.4.7</version></dependency> 2.application.yml…

webpack 核心武器:loader 和 plugin 的使用指南(上)

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

vite 打包优化

✨专栏介绍 在当今数字化时代&#xff0c;Web应用程序已经成为了人们生活和工作中不可或缺的一部分。而要构建出令人印象深刻且功能强大的Web应用程序&#xff0c;就需要掌握一系列前端技术。前端技术涵盖了HTML、CSS和JavaScript等核心技术&#xff0c;以及各种框架、库和工具…

matplotlib画波动很小的图

今天测试一个画图时&#xff0c;有一个很神奇的发现 import matplotlib.pyplot as plt import numpy as np import pandas as pd x [10,20,30,40,50,60,70,80]y[-23.99534833975495,-23.9999998600783,-24.000000070633167,-24.000000068469788,-24.00000006672905,-24.000…

2023年DevOps国际峰会暨 BizDevOps 企业峰会(DOIS北京站):核心内容与学习收获(附大会核心PPT下载)

随着科技的飞速发展&#xff0c;软件开发的模式和流程也在不断地演变。在众多软件开发方法中&#xff0c;DevOps已成为当下热门的软件开发运维一体化模式。特别是在中国&#xff0c;随着越来越多的企业开始认识到DevOps的价值&#xff0c;这一领域的研究与实践活动日益活跃。本…

electron + selenium报错: Server terminated early with status 1

解决办法&#xff1a; 这种错误一般是浏览器创建的某方法致命错误导致的&#xff0c;查看一下实例化driver的地方有哪些配置&#xff0c;着重看日志、用执行信息存储一类的配置&#xff0c;我的问题是日志文件夹改过了但没有创建 // 浏览器参数设置 const customArguments [-…

OpenHarmony:使用网络组件axios与Spring Boot进行前后端交互

流程图&#xff1a; 一、简单的交互 前端请求函数 firstGet(): Promise<AxiosResponse>{return axios.get(http://192.168.211.1:8090/test/1); } getAaddB(a: number, b: number): Promise<AxiosResponse>{return axios.get(http://192.168.211.1:8090/test/2…

智慧校园统一信息门户平台介绍

统一信息门户平台是以统一身份认证平台为基础,将校内分散、异构的应用和信息资源进行整合,通过统一的访问入口,实现各种应用系统的无缝接入和集成,并围绕校内人员之间的人际关系,构建一个支持信息访问、传递、以及协作的集成化环境,实现个性化业务应用的高效开发、集成、…

【Linux系统编程】进程优先级

文章目录 1. 优先级的基本概念2. 为什么存在优先级3. 查看系统进程4. PRI and NI5. top命令修改已存在进程的nice值6. 其他概念 1. 优先级的基本概念 本篇文章讲解进程优先级&#xff0c;首先我们来了解一下进程优先级的概念&#xff1a; cpu资源分配的先后顺序&#xff0c;就…

linux系统中Makefile的基本使用方法

Makefile是一种编译控制文件&#xff0c;广泛用于项目的自动化构建。它定义了一系列的规则来指导构建的过程。通过Makefile&#xff0c;开发者可以轻松管理大型项目的编译链接、清理等任务。本文将从Makefile的基础用法讲起&#xff0c;逐步深入到更高级的应用&#xff0c;为你…

003 摄像头的配置

string realm_s “IP Camera(J4605)”; 需要根据摄像头的具体型号进行修改&#xff1b; IP Camera(L3433) 张XX的摄像头 正常的启动信息 connect 0. connect success. -------------------------SEND OPTIONS------------------------------ OPTIONS rtsp://192.168.1.64:55…

C#串口通讯控制4路继电上位机

C#串口通讯控制4路继电上位机 界面如下 源码如下 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text;//引入空间 using System.Windows.Forms; using System.I…

PS滤镜插件:Adobe Camera Raw 16 for Mac中文激活版

Adobe Camera Raw是Adobe公司开发的一款用于处理数码相机RAW格式文件的软件插件。它可以在Adobe Photoshop、Adobe Bridge和Adobe Lightroom等软件中使用&#xff0c;用于调整RAW文件的曝光、白平衡、对比度、色彩饱和度、锐化等参数&#xff0c;从而得到更好的图像质量。 软件…

接口测试 04 -- Jsonpath断言、接口关联处理

1. JsonPath基本介绍 1.1 JsonPath简介 JsonPath是一种用于在JSON数据中定位和提取特定数据的表达式语言。它类似于XPath用于XML的定位和提取&#xff0c;可以帮助我们灵活地从复杂的JSON结构中获取所需的数据。 1.2 JsonPath的特点 ● JsonPath可处理的报文类型为字典类型 …

运动的解析:从机械运动到自由落体,探索物体运动的基本规律与数学描述

文章目录 一、机械运动&#xff08;一&#xff09;运动概念&#xff08;二&#xff09;运动形式&#xff08;三&#xff09;参照物 二、质点&#xff08;一&#xff09;理想化模型&#xff08;二&#xff09;质点概念 三、位移和路程&#xff08;一&#xff09;位移&#xff08…