Home php教程 PHP开发 PHP dangerous function explanation and analysis

PHP dangerous function explanation and analysis

Dec 14, 2016 pm 12:03 PM

Can be used when compiling –disable-cli. Once PHP in CLI mode is compiled and generated, it may be used by intruders to establish a WEB Shell backdoor process or execute arbitrary code through PHP!

phpinfo()

Function description: Output PHP environment information and related module, WEB environment and other information.
Danger level: Medium

passthru()

Function description: Allows to execute an external program and echo the output, similar to exec().
Danger level: High

exec()

Function description: Allows the execution of an external program (such as UNIX Shell or CMD command, etc.).
Danger level: High

system()

Function description: Allows to execute an external program and echo the output, similar to passthru().
Danger level: High

chroot()

Function description: It can change the working root directory of the current PHP process. It can only work when the system supports CLI mode
PHP, and this function is not applicable to Windows systems.
Danger level: High

scandir()

Function description: List files and directories in the specified path.
Danger level: Medium

chgrp()

Function description: Change the user group to which a file or directory belongs.
Danger level: High

chown()

Function description: Change the owner of a file or directory.
Danger level: High

shell_exec()

Function description: Execute the command through Shell and return the execution result as a string.
Danger level: High

proc_open()

Function description: Execute a command and open the file pointer for reading and writing.
Danger level: High

proc_get_status()

Function description: Get information about the process opened using proc_open().
Danger level: High

error_log()

Function description: Send error information to the specified location (file).
Safety Note: In some versions of PHP, error_log() can be used to bypass PHP safe mode and
execute arbitrary commands.
Danger level: low

ini_alter()

Function description: It is an alias function of the ini_set() function and has the same function as ini_set().
See ini_set() for details.
Danger level: High

ini_set()

Function description: Can be used to modify and set PHP environment configuration parameters.
Danger level: High

ini_restore()

Function description: Can be used to restore PHP environment configuration parameters to their initial values.
Danger level: High

dl()

Function description: Load a PHP external module while PHP is running (not when it starts).
Danger level: High

pfsockopen()

Function description: Establish a socket persistent connection in the Internet or UNIX domain.
Danger level: High

syslog()

Function description: The system layer syslog() function of the UNIX system can be called.
Danger level: Medium

readlink()

Function description: Returns the content of the target file pointed to by the symbolic link.
Danger level: Medium

symlink()

Function description: Create a symbolic link in a UNIX system.
Danger level: High

popen()

Function description: You can pass a command through the parameters of popen() and execute the file opened by popen().
Danger level: High

stream_socket_server()

Function description: Establish an Internet or UNIX server connection.
Danger level: Medium

putenv()

Function description: Used to change the system character set environment when PHP is running. In PHP versions earlier than 5.2.6, you can use this function to modify the system character set environment and then use the sendmail command to send special parameters to execute the system SHELL command.
Danger level: High

The above is the explanation and analysis of PHP dangerous functions. For more related content, please pay attention to the php Chinese website (www.php.cn)!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to use MySQL database for forecasting and predictive analytics? How to use MySQL database for forecasting and predictive analytics? Jul 12, 2023 pm 08:43 PM

How to use MySQL database for forecasting and predictive analytics? Overview: Forecasting and predictive analytics play an important role in data analysis. MySQL, a widely used relational database management system, can also be used for prediction and predictive analysis tasks. This article will introduce how to use MySQL for prediction and predictive analysis, and provide relevant code examples. Data preparation: First, we need to prepare relevant data. Suppose we want to do sales forecasting, we need a table with sales data. In MySQL we can use

How to implement data statistics and analysis in uniapp How to implement data statistics and analysis in uniapp Oct 24, 2023 pm 12:37 PM

How to implement data statistics and analysis in uniapp 1. Background introduction Data statistics and analysis are a very important part of the mobile application development process. Through statistics and analysis of user behavior, developers can have an in-depth understanding of user preferences and usage habits. Thereby optimizing product design and user experience. This article will introduce how to implement data statistics and analysis functions in uniapp, and provide some specific code examples. 2. Choose appropriate data statistics and analysis tools. The first step to implement data statistics and analysis in uniapp is to choose the appropriate data statistics and analysis tools.

How to use Go language for data visualization analysis? How to use Go language for data visualization analysis? Jun 10, 2023 am 10:46 AM

With the advent of the big data era, data visualization analysis plays a vital role in all walks of life. As a fast, efficient and safe programming language, Go language has gradually occupied a place in the field of data visualization analysis. This article will explore how to use Go language for data visualization analysis. 1. Plotly, a commonly used data visualization library in Go language: can be used to create interactive graphics in the browser and supports a variety of graphics types, such as line graphs, bar graphs, scatter plots, heat maps, etc. Gonum/plo

Real-time log monitoring and analysis under Linux Real-time log monitoring and analysis under Linux Jul 29, 2023 am 08:06 AM

Real-time log monitoring and analysis under Linux In daily system management and troubleshooting, logs are a very important data source. Through real-time monitoring and analysis of system logs, we can detect abnormal situations in time and handle them accordingly. This article will introduce how to perform real-time log monitoring and analysis under Linux, and provide corresponding code examples. 1. Real-time log monitoring Under Linux, the most commonly used log system is rsyslog. By configuring rsyslog, we can combine the logs of different applications

Steps of statistical analysis Steps of statistical analysis Jun 28, 2023 pm 03:27 PM

Statistical analysis often refers to the process of sorting, classifying and interpreting collected relevant data. The basic steps of statistical analysis include: 1. Collect data; 2. Organize data; 3. Analyze data.

Analysis of the reasons why the secondary directory of DreamWeaver CMS cannot be opened Analysis of the reasons why the secondary directory of DreamWeaver CMS cannot be opened Mar 13, 2024 pm 06:24 PM

Title: Analysis of the reasons and solutions for why the secondary directory of DreamWeaver CMS cannot be opened. Dreamweaver CMS (DedeCMS) is a powerful open source content management system that is widely used in the construction of various websites. However, sometimes during the process of building a website, you may encounter a situation where the secondary directory cannot be opened, which brings trouble to the normal operation of the website. In this article, we will analyze the possible reasons why the secondary directory cannot be opened and provide specific code examples to solve this problem. 1. Possible cause analysis: Pseudo-static rule configuration problem: during use

ThinkPHP6 code performance analysis: locating performance bottlenecks ThinkPHP6 code performance analysis: locating performance bottlenecks Aug 27, 2023 pm 01:36 PM

ThinkPHP6 code performance analysis: locating performance bottlenecks Introduction: With the rapid development of the Internet, more efficient code performance analysis has become increasingly important for developers. This article will introduce how to use ThinkPHP6 to perform code performance analysis in order to locate and solve performance bottlenecks. At the same time, we will also use code examples to help readers understand better. Importance of Performance Analysis Code performance analysis is an integral part of the development process. By analyzing the performance of the code, we can understand where a lot of resources are consumed

Performance analysis and optimization strategy of TP6 Think-Swoole RPC service Performance analysis and optimization strategy of TP6 Think-Swoole RPC service Oct 12, 2023 am 10:34 AM

Performance analysis and optimization strategies of TP6Think-SwooleRPC service Summary: This article mainly analyzes the performance of TP6 and Think-SwooleRPC services, and proposes some optimization strategies. First, the response time, concurrency and throughput of the RPC service were evaluated through performance testing. Then, corresponding solutions and practices are proposed from two aspects: server-side performance optimization and client-side performance optimization, including code examples. Keywords: TP6, Think-Swoole, R

See all articles