请问有经验的PHP老鸟,程序的安全性!
请教有经验的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会解释的文件(检测文件后缀即可)
背份还原漏洞:
解决:
管理好管理员密码.做好日志
以上是我总结的一些黑客常用的攻击方法,还有什么方法希望大家补充,交流.

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

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

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

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.

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

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.

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

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

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é.
