Maison développement back-end tutoriel php 请问有经验的PHP老鸟,程序的安全性!

请问有经验的PHP老鸟,程序的安全性!

Jun 13, 2016 am 10:02 AM
array get

请教有经验的PHP老鸟,程序的安全性!?
讨论下开发PHP网站,除了操作系统和WEB服务软件,在程序本身安全方面应该注意那些

记得第一次给客户做的小站1个月就被坏蛋给黑了,检查发现居然在首页最下边被加了个 ,结果就是老弹广告。就可能是因为程序漏洞造成的。

还有听说工行的网站被恶搞,等等。

谢谢拉





------解决方案--------------------
呵呵,大家来点实际的
/*
*防注入处理
*/
if(!get_magic_quotes_gpc()){
immit(___FCKpd___0
POST);
immit(___FCKpd___0
GET);
immit(___FCKpd___0
COOKIE);
}
//防注入处理(为变量加入斜杠)函数
//参数 $array 为防注入变量数组
function immit(&$array){
foreach($array as $key=> $value){
if(!is_array($value)){
$array[$key]=addslashes($value);
}else{
immit($array[$key]);
}
}
}


php中如何避免sql注入攻击


if(!get_magic_quotes_gpc()){
callUserFunc(___FCKpd___0
GET, 'addslashes ');
callUserFunc(___FCKpd___0
POST, 'addslashes ');
}
就可以了,字段值加 ' 就可以了,如查询文章
"SELECT * FROM table WHERE id= '$id ' "

------解决方案--------------------
一般的主要注意以下几项:
脚本攻击(危害不太大主要是对客户端).
解决:将用户发表的文字用htmlspecialchars处理.

sql注入.
解决:
最好打开get_magic_quotes_gpc若未打开用addslashes替换用户以post或get方式传输的数据.
或限制传输的数据长度在安全范围内(比如限制1-2个char长),
或严格检查用户传输数据的类型.我见过有人在asp内检测关键字这是一个解决方法,但效率不高.

上传漏洞:
解决:
检查用户传输文件大小,限制其大小
检查用户传输文件的类型,绝对不允许用户传apache会解释的文件(检测文件后缀即可)

背份还原漏洞:
解决:
管理好管理员密码.做好日志

以上是我总结的一些黑客常用的攻击方法,还有什么方法希望大家补充,交流.

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
4 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment automatiser les tâches à l'aide de PowerShell Comment automatiser les tâches à l'aide de PowerShell Feb 20, 2024 pm 01:51 PM

Si vous êtes un administrateur informatique ou un expert en technologie, vous devez être conscient de l'importance de l'automatisation. Surtout pour les utilisateurs de Windows, Microsoft PowerShell est l'un des meilleurs outils d'automatisation. Microsoft propose une variété d'outils pour vos besoins d'automatisation, sans qu'il soit nécessaire d'installer des applications tierces. Ce guide détaillera comment exploiter PowerShell pour automatiser les tâches. Qu'est-ce qu'un script PowerShell ? Si vous avez de l'expérience avec PowerShell, vous avez peut-être utilisé des commandes pour configurer votre système d'exploitation. Un script est une collection de ces commandes dans un fichier .ps1. Les fichiers .ps1 contiennent des scripts exécutés par PowerShell, tels que Get-Help de base

Trier le tableau à l'aide de la fonction Array.Sort en C# Trier le tableau à l'aide de la fonction Array.Sort en C# Nov 18, 2023 am 10:37 AM

Titre : Exemple d'utilisation de la fonction Array.Sort pour trier un tableau en C# Texte : En C#, un tableau est une structure de données couramment utilisée, et il est souvent nécessaire de trier le tableau. C# fournit la classe Array, qui possède la méthode Sort pour trier facilement les tableaux. Cet article explique comment utiliser la fonction Array.Sort en C# pour trier un tableau et fournit des exemples de code spécifiques. Tout d’abord, nous devons comprendre l’utilisation de base de la fonction Array.Sort. Tableau.Donc

Comment Java lance-t-il une requête http, appelle-t-il la publication et obtient-il les interfaces ? Comment Java lance-t-il une requête http, appelle-t-il la publication et obtient-il les interfaces ? May 16, 2023 pm 07:53 PM

1. Java appelle l'interface de publication 1. Utilisez URLConnection ou HttpURLConnection fourni avec Java. Il n'est pas nécessaire de télécharger d'autres packages jar. Si le code de réponse de l'interface est modifié par le serveur, le message de retour ne peut pas être reçu. ne peut être reçu que lorsque le code de réponse est correct pour renvoyer publicstaticStringsendPost(Stringurl,Stringparam){OutputStreamWriterout=null;BufferedReaderin=null;StringBuilderresult=newSt.

Méthode simple et claire pour utiliser la fonction PHP array_merge_recursive() Méthode simple et claire pour utiliser la fonction PHP array_merge_recursive() Jun 27, 2023 pm 01:48 PM

Lors de la programmation en PHP, nous avons souvent besoin de fusionner des tableaux. PHP fournit la fonction array_merge() pour terminer la fusion du tableau, mais lorsque la même clé existe dans le tableau, cette fonction écrasera la valeur d'origine. Afin de résoudre ce problème, PHP fournit également une fonction array_merge_recursive() dans le langage, qui peut fusionner des tableaux et conserver les valeurs des mêmes clés, rendant la conception du programme plus flexible. tableau_merge

Exemple de commande Curl Get Exemple de commande Curl Get Mar 20, 2024 pm 06:56 PM

Sous Linux, le client URL ou Curl est un utilitaire de ligne de commande populaire qui vous permet de transférer des données sur le réseau à l'aide de divers protocoles tels que HTTPS, HTTP, FTP, etc. Il vous permet d'envoyer et de recevoir des données en utilisant ses méthodes get, post et request. Parmi eux, vous devez utiliser fréquemment la méthode « get ». Par conséquent, il devient crucial d’apprendre diverses méthodes et différentes options que vous pouvez utiliser pour augmenter votre productivité. "Effectuer une opération curl est aussi simple que de saisir quelques commandes simples. Bien que cela semble simple, de nombreux utilisateurs ne réalisent pas pleinement son potentiel. Par conséquent, ce petit guide fournit des informations sur la façon d'effectuer des opérations curl sur les systèmes Linux. Exemple utilisant " curlget" commande "Curl.

Comment utiliser la fonction array_combine en PHP pour combiner deux tableaux en un tableau associatif Comment utiliser la fonction array_combine en PHP pour combiner deux tableaux en un tableau associatif Jun 26, 2023 pm 01:41 PM

En PHP, il existe de nombreuses fonctions de tableau puissantes qui peuvent rendre les opérations sur les tableaux plus pratiques et plus rapides. Lorsque nous devons combiner deux tableaux en un tableau associatif, nous pouvons utiliser la fonction array_combine de PHP pour réaliser cette opération. Cette fonction est en fait utilisée pour combiner les clés d'un tableau avec les valeurs d'un autre tableau dans un nouveau tableau associatif. Ensuite, nous expliquerons comment utiliser la fonction array_combine en PHP pour combiner deux tableaux en un tableau associatif. En savoir plus sur array_comb

Comment changer la source de mise à jour apt-get d'Ubuntu ? Comment changer la source de mise à jour apt-get d'Ubuntu ? Jan 05, 2024 pm 03:40 PM

Modifier manuellement les sources apt-get d'Ubuntu 1. Utilisez l'outil ssh pour vous connecter à Ubuntu (j'utilise xshell) 2. Tapez cd/etc/apt/3 sur la ligne de commande et sauvegardez le fichier source.list dans ce répertoire (vous devez avez les autorisations sudo)), alors il y a un fichier source.list.bak 4. Effacez le contenu du fichier source.list (remarque : il ne peut pas être restauré après l'effacement, vous devez donc effectuer l'étape précédente pour sauvegarder le fichier dans. advance). À ce stade, utilisez sudo pour indiquer que les autorisations sont insuffisantes. Basculez directement vers l'utilisateur root et exécutez cette commande 5. Utilisez vim pour ouvrir source.list, appuyez sur la touche i pour entrer en mode édition, collez la source. adresse à modifier, puis appuyez sur

Analyse approfondie des similitudes et des différences entre la méthode get et la méthode post dans jQuery Analyse approfondie des similitudes et des différences entre la méthode get et la méthode post dans jQuery Feb 24, 2024 pm 12:15 PM

Get et post sont deux méthodes de requête ajax couramment utilisées dans jQuery, qui sont utilisées pour envoyer des requêtes au serveur et obtenir des données. Ils présentent quelques différences d'utilisation et certaines fonctionnalités. Nous expliquerons ensuite leurs similitudes et leurs différences en détail et joindrons des exemples de code spécifiques. Les similitudes entre get et post : ce sont deux méthodes d'envoi de requêtes ajax. Vous pouvez obtenir des données du serveur en spécifiant l'URL et les paramètres de données. Les deux peuvent accepter des fonctions de rappel comme paramètres, qui sont utilisées pour traiter les données renvoyées par le serveur ou gérer les requêtes ayant échoué.

See all articles