XSS攻撃+ CRSFクロスサイトリクエストフォージェリ

XSS攻撃

  ハッカーによるクロスサイトスクリプティング攻撃は、ページ内の不安によって引き起こさページ障害をjsのコードを挿入します。

  安全でないパフォーマンス:ユーザーがサイトにアクセスする場合は、クッキーjsのコードを取得するには、Webページに挿入されたハッカー場合は、ハッカーがユーザーのクッキー情報を取得することができ、ハッカーができます偽の情報利用者へ。

  安全なフロントエンドとバックエンドのmark_safeがあります

  ユーザーがページ上の書き込みjsのコードを挿入し、というように(コードの変更)、追加したい場合は、それは安全で追加したりしないでください、それは私たち自身のコースに加えて、安全を書くことであれば、ろ過jsのコードと、バックグラウンドで他の作品を作るために覚えていることができるかどうかということに注意することは安全な使用とにかく上

  mark_safe時間を使って、ユーザーのデータが時に処理する必要があります

  Djangoのデフォルトでは、私たちに、この層のXSS攻撃防止を与えました

例:シミュレートされたユーザー入力の影響は、JSコード入力ボックスをもたらしました

  CSRFミドルウェアは、ここでは、設定ファイルでコメントアウトすることができます

1  ""」djangoxss URLの設定
 2  
3  : `urlpatterns`リストルートのURLビューの詳細については参照してください。
 4      https://docs.djangoproject.com/en/2.1/topics/http/urls/
 5  例:
 6  機能ビュー
 7      1.インポートを追加します。MY_APPインポートビューから
 8      2. urlpatternsにURLを追加します。パス(「」、views.home、名前=「ホーム」)
 9  クラスベースのビューを
 10      1.インポートを追加しますからother_app.viewsはホームインポート
 11      パス( ''、Home.as_view()、名前= '自宅'):urlpatternsにURLを追加します。2.
 12  別のURLconfを含む
 13を     含まdjango.urlsインポートから、パス:1.インポートインクルードは()関数が含ま
 14      パス( 'ブログ/'、( 'blog.urlsを'を含む)):2. urlpatternsにURLを追加します。
 15  ""」
16  からジャンゴ。 contrib インポート管理者
 17  から django.urls インポート経路
 18  から app01 インポートビュー
 19  
20 urlpatterns = [
 21      パス(' 管理/ ' 、admin.site.urls)、
 22      パス(' インデックス/ ' 、views.index)、
 23      パス(' コメント/ ' 、views.comment)、
 24      パス(' テスト/ ' 、views.test)、
 25 ]
urls.py
1  から django.shortcutsはインポートレンダリング
 2  
。3 MSG = []
 。4  
。5  
。6  DEFの:コメント(Request)を
 7。     IF request.method == ' GET ' 8。         戻るレンダリング(要求、' comment.html ' 。9      10          m個request.POST.get =(コンテンツ11。         IF  スクリプト  M:   #1 もちろん、これは行くために、よりシンプルな決意jsのコードである
12を             リターン(要求、レンダリング' comment.html ' { ' エラー'' 小逼崽子黑我' })
 13          14              msg.append(m)が
 15              リターンレンダリング(要求、' comment.html ' 16  
17  
18  DEF 指数(要求):
 19      リターンレンダリング(要求、' index.htmlを' { ' MSG ' :MSG})
 20  
21  
22  デフ試験(リクエスト):
23      から django.utils.safestring インポートmark_safe
 24      TEMPは= " <a href='http://www.baidu.com'>百度</a>を" 
25      newtempを= mark_safe(TEMP)
 26      リターン(レンダリング要求、' テスト.htmlの' { ' TEMP ':newtempを})
views.py 
<!DOCTYPE HTML> 
<HTML LANG = "EN"> 
<HEAD> 
    <メタ文字コード= "UTF-8"> 
    <タイトル>インデックス</ TITLE> 
</ HEAD> 
<BODY> 
    <H3>评论信息</ H3> 
    {MSG%の内のアイテムの%} 
        の<div> {{アイテム| 安全}} </ div> 
    {%ENDFOR%} 

</ BODY> 
</ HTML> 
<!DOCTYPE HTML> 
<HTML LANG = "EN"> 
<HEAD> 
    <メタ文字コード= "UTF-8"> 
    <タイトル>コメント</ TITLE> 
</ HEAD> 
<BODY> 
    <フォームアクション= "/コメント/"方法= "POST"> 
        {%csrf_token%} 
        <P>の<input type = "text"の名= "コンテンツ"> </ P> 
        の<input type =値を"送信" = "提交"> 
    </ FORM> 
</ボディ> 
</ HTML>  
<!DOCTYPE HTML> 
<HTMLのlang = "EN"> 
<HEAD> 
    <メタのcharset = "UTF-8"> 
    <タイトル>テスト</タイトル> 
</ HEAD> 
<BODY> 
    {{TEMP}} 
</ BODY> 
</ HTML>

  

 

 

 

 

おすすめ

転載: www.cnblogs.com/Alexephor/p/11260533.html