首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
substring
install
function
process
version
nodejs
split
vba
future
emoji
cookie
web3
hash
runtime
buffer
filter
request
instance
post
blob
cSharp
ascii
text
char
actionscrip
js
timestamp
netty
header
include
byte
integer
uml
object
javascript
window
ip
main
php
io
select
typescript
foreach
match
hook
timezone
httpclient
dll
erlang
php7
dockerfile
metadata
eval
join
config
cpython
c语言
sum
merge
node.js
lua
format
php5
require
schema
spring
stream
less
search
yaml
flutter
hashtable
frameworks
int
controller
express
random
heatmap
const
当前位置:
开发笔记
>
编程语言
> 正文
任意代码命令执行漏洞
作者:隔壁小王 | 来源:互联网 | 2023-08-21 18:06
代码执行:原理:当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能够控制这个字符串,将造成代码注入漏洞。在ph
代码执行:
原理:
当应用在调用一些能将字符串转化成代码的函数时,没有考虑用户是否能够控制这个字符串,将造成代码注入漏洞。
在php中:
eval
assert
preg_replace(‘/*/e', '$ret = "\\1";',$data);
在asp中:
eval
exevute
executeglobal
在jsp中:
jsp中没有php中的eval函数,但是可以使用反射机制,使用基于反射机制的表达式引擎,如0GNL,SpEL,MVEL等。
代码执行漏洞:
1、由于thinkphp存在代码执行漏洞,我们可以使用谷歌语法来搜索这类网站。
2、学习代码审计,自己找一些代码执行漏洞。
简单的代码执行:
$data = $_GET[‘data’];
eval("\$ret = strtolower(\"$data\");");
echo $ret;
?>
利用方式:
http://localhost/?data=${phpinfo();}
代码执行的防御方法:
1、使用json保存数组,当读取时就不需要使用eval了。
2、对于必须使用eval的地方,一定严格处理用户数据(白名单、黑名单)。
3、字符串使用单引号包括可控代码,插入前使用addslashes转义(addslashes、魔数引号、htmlspecialchars、 htmlentities、mysql_real_escape_string)。
4、放弃使用preg_replace的e修饰符,使用preg_replace_callback()替换(preg_replace_callback())。
5、若必须使用preg_replace的e修饰符,则必用单引号包裹正则匹配出的对象(preg_replace+正则)。
漏洞
注入
php
eval
replace
jsp
thinkphp
搜索
get
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
post
包含phppdoerrorcode的词条
包含phppdoerrorcode的词条 ...
[详细]
蜡笔小新 2024-11-14 12:06:14
timestamp
MySQL初级篇——字符串、日期时间、流程控制函数的相关应用
文章目录:1.字符串函数2.日期时间函数2.1获取日期时间2.2日期与时间戳的转换2.3获取年月日、时分秒、星期数、天数等函数2.4时间和秒钟的转换2. ...
[详细]
蜡笔小新 2024-11-14 10:57:02
js
SoundPool
如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ...
[详细]
蜡笔小新 2024-11-13 16:47:19
text
基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ...
[详细]
蜡笔小新 2024-11-11 10:58:21
text
如何查看PHP网站及其源码
本文介绍了如何查看PHP网站及其源码的方法,包括环境搭建、本地测试、源码查看和在线查找等步骤。 ...
[详细]
蜡笔小新 2024-11-14 21:51:01
char
Spring Boot 中使用 spring-boot-starter-quartz 实现定时任务
本文介绍了如何在 Spring Boot 项目中使用 spring-boot-starter-quartz 组件实现定时任务,并将 cron 表达式存储在数据库中,以便动态调整任务执行频率。 ...
[详细]
蜡笔小新 2024-11-14 18:55:09
include
NX二次开发:UFUN点收集器UF_UI_select_point_collection详解
本文介绍了如何在NX中使用UFUN库进行点收集器的二次开发,包括必要的头文件包含、初始化和选择点集合的具体实现。 ...
[详细]
蜡笔小新 2024-11-14 10:18:35
js
MySQL 数据库连接方法
本文介绍了如何使用 MySQL 命令行工具连接到指定的数据库。 ...
[详细]
蜡笔小新 2024-11-14 10:08:54
timestamp
日志处理流程:Flume+MapReduce+Hive+Sqoop+MySQL
本文介绍了如何使用Flume从Linux文件系统收集日志并存储到HDFS,然后通过MapReduce清洗数据,使用Hive进行数据分析,并最终通过Sqoop将结果导出到MySQL数据库。 ...
[详细]
蜡笔小新 2024-11-13 18:47:34
timestamp
Spring 3.0.5 中获取 MySQL 表的自增主键
本文介绍了如何在 Spring 3.0.5 中使用 JdbcTemplate 插入数据并获取 MySQL 表中的自增主键。 ...
[详细]
蜡笔小新 2024-11-13 18:00:32
js
Framework7:构建跨平台移动应用的高效框架
Framework7 是一个开源免费的框架,适用于开发混合移动应用(原生与HTML混合)或iOS&Android风格的Web应用。此外,它还可以作为原型开发工具,帮助开发者快速创建应用原型。 ...
[详细]
蜡笔小新 2024-11-12 14:47:56
js
JavaWeb文件上传:前端实现与后端处理详解
在JavaWeb开发中,文件上传是一个常见的需求。无论是通过表单还是其他方式上传文件,都必须使用POST请求。前端部分通常采用HTML表单来实现文件选择和提交功能。后端则利用Apache Commons FileUpload库来处理上传的文件,该库提供了强大的文件解析和存储能力,能够高效地处理各种文件类型。此外,为了提高系统的安全性和稳定性,还需要对上传文件的大小、格式等进行严格的校验和限制。 ...
[详细]
蜡笔小新 2024-11-11 19:50:46
timestamp
MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ...
[详细]
蜡笔小新 2024-11-11 19:36:19
timestamp
未定义的打字稿记录:探索其成因与解决方案
未定义的打字稿记录:探索其成因与解决方案 ...
[详细]
蜡笔小新 2024-11-11 17:17:21
request
PHP实现MySQL分页查询功能优化与实践
本文探讨了在PHP中实现MySQL分页查询功能的优化方法与实际应用。通过详细分析分页查询的常见问题,提出了多种优化策略,包括使用索引、减少查询字段、合理设置缓存等。文章还提供了一个具体的示例,展示了如何通过优化模型加载和分页参数设置,显著提升查询性能和用户体验。 ...
[详细]
蜡笔小新 2024-11-11 12:46:36
隔壁小王
刚开始
Tags | 热门标签
substring
install
function
process
version
nodejs
split
vba
future
emoji
cookie
web3
hash
runtime
buffer
filter
request
instance
post
blob
cSharp
ascii
text
char
actionscrip
js
timestamp
netty
header
include
RankList | 热门文章
1
ios的签名机制详解
2
Android自定义表格控件满足人们对视觉的需求
3
为Android应用增加渠道信息 自动化不同渠道的打包过程的使用详解
4
Android 后台发送邮件示例 (收集应用异常信息+Demo代码)
5
Android蓝牙开发深入解析
6
Android入门之ActivityGroup+GridView实现Tab分页标签的方法
7
Android开发之注册登录方法示例
8
java实现静默安装apk
9
android实现缓存图片等数据
10
Android编程实现ListView头部ViewPager广告轮询图效果
11
Android中startService基本使用方法概述
12
Android编程中HTTP服务用法详解
13
Android自定义表格控件满足人们对视觉的需求
14
为Android应用增加渠道信息 自动化不同渠道的打包过程的使用详解
15
Android 后台发送邮件示例 (收集应用异常信息+Demo代码)
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有