موصى به: الوقاية من ملفات تعريف الارتباط الثغرافية (تطبيق VBS JS) 1. مبدأ الهجوم على ملفات تعريف الارتباط يستخدم بشكل أساسي الممارسة غير الآمنة لتخزين معلومات تسجيل دخول المستخدم في ملفات تعريف الارتباط على الشبكة الحالية. طريقة الهجوم صعبة نسبيًا مقارنة بالثغراتية مثل نقاط الضعف في حقن SQL & RDQUO
ما يلي هو المحتوى المقتبس: <٪ '' مثال استدعاء 'dim int_rpp ، int_start ، int_shownumberlink_ ، str_nonlinkcolor_ ، tof_ ، top10_ ، top1_ ، top1_ ، ton1_ ، ton10_ ، tol_ ، showmorepagego_type_ ، cpageno "int_rpp = 2" قم بتعيين عدد العروض لكل صفحة "int_shownumberlink_ = 8" رقم العرض "showmorepagego_type_ = 1" هل هي قائمة منسدلة أو قفزة قيمة إدخال ، يمكن تحديد 1 فقط عند استدعاء مكالمات متعددة 'str_nonlinkcolor _ =#999999' لون ارتباط غير حار 'tof _ = <font face = webdings> 9 </font>' Home 'top10_ = <font face = webdings> 7 </font>' في عشرة 'top1_ = <font face = webdings> 3 </font> "سابق 'ton1_ = <font face = webdings> 4 </font>' التالي "ton10_ = <font face = webdings> 8 </font>" العشرة التالية 'tol _ = <font face = webdings>: </font> "الصفحة الأخيرة '========================================================= 'يجب أن يكون هذا الرمز بين VCLASS_RS.Open و for loop 'set vclass_rs = createObject (g_fs_rs) 'vclass_rs.open this_fun_sql ، user_conn ، 1،1 "إذا لم يكن vclass_rs.eof ثم 'vclass_rs.pagesize = int_rpp 'cpageno = nosqlhack (request.querystring (page)) إذا cpageno = ثم cpageno = 1 'إذا لم يكن isnumeric (cpageno) ثم cpageno = 1 'cpageno = clng (cpageno) 'إذا كان cpageno <= 0 ثم cpageno = 1 "إذا كان cpageno> vclass_rs.pagecount ثم cpageno = vclass_rs.pageCount 'vclass_rs.absolutepage = cpageno 'for int_start = 1 إلى int_rpp '' ' أضف جسم حلقة لعرض البيانات '' ' 'vclass_rs.movenext 'إذا كان VCLASS_RS.EOF أو VCLASS_RS.BOF ثم الخروج من أجل ' التالي 'end if '========================================================= 'Response.write <p> & fpageCount (vclass_rs ، int_shownumberlink_ ، str_nonlinkcolor_ ، tof_ ، top10_ ، top1_ ، top1_ ، ton1_ ، ton10_ ، tol_ ، showmorepagego_type_ ، cpageno) '' ' '*************************************************************** 'الغرض: الحفاظ على معلمات الصفحات 'تناسق تقديم الاستعلام 'المدخلات: MoveParam: ترقيم الصفحات "الإزالة: المعلمة المراد إزالتها 'العودة: URL ترقيم الصفحات '*************************************************************** وظيفة pageurl (MoveParam ، removelist) قاتمة strname Dim Keepurl ، Keepform ، KeepMove الإزالة = الإزالة و ، و movparam Keepform = لكل strname في request.form "يقدم القاضي القيم الفارغة في النموذج معلمات النموذج إذا لم يكن Instrrev (، & removelist & ،،، & strname & ، -1 ، 1)> 0 و request.form (strname) <> ثم keepform = keepform &&& strname & = & server.urlencode (request.form (strname)) إنهاء إذا الإزالة = الإزالة و ، و strname التالي Keepurl = لكل strname في request.querystring إذا لم يكن (instrev (، & removelist & ،،، & strname & ،، -1 ، 1)> 0) ثم keepurl = keepurl & & strname & = & server.urlencode (request.querystring (strname)) إنهاء إذا التالي KeepMove = Keepform & Keepurl إذا (KeepMove <>) ثم KeepMove = Right (KeepMove ، Len (KeepMove) - 1) KeepMove = server.htmlencode (KeepMove) & & إنهاء إذا 'pageurl = replace (request.servervariables (url) ،/search.asp ،/search.html) &؟ & KeepMove & MoveParam & = pageurl =؟ & KeepMove & MoveParam & = وظيفة نهاية الدالة fpageCount (page_rs ، dhernumberlink_ ، nonlinkcolor_ ، tof_ ، top10_ ، top1_ ، top1_ ، ton1_ ، ton10_ ، tol_ ، showmorepagego_type_ ، الصفحة) Dim this_func_get_html_ ، topage_ ، p_ ، sp2_ ، i ، tpageCount قاتمة الطول ، صفحة البدء ، صفحة داخلية this_func_get_html_ =: i = 1 Navilength = dishowmberLink_ إذا كانت isempty (showmorepagego_type_) ثم showmorepagego_type_ = 1 tpageCount = page_rs.pageCount إذا tpageCount <1 ثم tpageCount = 1 إذا لم يكن page_rs.eof أو لا page_rs.bof ثم topage_ = pageurl (صفحة ، إرسال ، gettype ، عدم وجود آذان ، _) إذا الصفحة = 1 ثم this_func_get_html_ = this_func_get_html_ & <font color = & nonlinkcolor_ & title = home> & tof _ & </font> & vbnewline آخر this_func_get_html_ = this_func_get_html_ & <a href = & topage_ & 1 title = home> & tof_ & </a> & vbnewline إنهاء إذا إذا صفحة <navilength ثم startPage = 1 آخر startPage = الإصلاح (الصفحة / الطول navil إنهاء إذا PENDPAGE = startPage navilength-1 إذا كانت endpage> tpageCount ثم PENDPAGE = tpageCount إذا بدأ startPage> 1 ثم هذا _func_get_html_ = this_func_get_html_ & <a href = & topage_ & page - navilength & title = & int_shownumberlink_ & page> & top10_ & </a> & vbnewline آخر this_func_get_html_ = this_func_get_html_ & <font color = & nonlinkcolor_ & title = & int_shownumberlink_ & page> & top10 _ & </font> & vbnewline إنهاء إذا إذا كانت الصفحة <> 1 والصفحة <> 0 ثم هذا _func_get_html_ = this_func_get_html_ & <a href = & topage _ & (page-1) آخر this_func_get_html_ = this_func_get_html_ & <font color = & nonlinkcolor_ & title = private page> & top1 _ & </font> & vbnewline إنهاء إذا ل I = startPage إلى PENDPAGE إذا كنت = صفحة ثم this_func_get_html_ = this_func_get_html_ & <b> & i & </b> & vbnewline آخر this_func_get_html_ = this_func_get_html_ & <a href = & topage_ & i &> & i & </a> & vbnewline إنهاء إذا إذا كنت <> tpageCount ثم this_func_get_html_ = this_func_get_html_ & vbnewline التالي إذا كانت الصفحة <> page_rs.pageCount و Page <> 0 ثم this_func_get_html_ = this_func_get_html_ & <a href = & topage _ & (page 1) آخر this_func_get_html_ = this_func_get_html_ & <font color = & nonlinkcolor_ & title = next page> & ton1 _ & </font> & vbnewline إنهاء إذا إذا كانت الجودة <tpageCount ثم هذا _func_get_html_ = this_func_get_html_ & <a href = & topage_ & page navilength & title = & int_shownumberlink_ & page> & ton10_ & </a> & vbnewline آخر this_func_get_html_ = this_func_get_html_ & <font color = & nonlinkcolor_ & title = & int_shownumberlink_ & page> & ton10 _ & </font> & vbnewline إنهاء إذا إذا كان page_rs.pageCount <> صفحة ثم هذا _func_get_html_ = this_func_get_html_ & <a href = & topage_ & page_rs.pagecount آخر هذا _func_get_html_ = this_func_get_html_ & <font color = & nonlinkcolor_ & title = last page> & tol _ & </font> & vbnewline إنهاء إذا إذا كان ShowmorePageGo_type_ = 1 ثم dim show_page_i show_page_i = الصفحة 1 إذا كان show_page_i> tpageCount ثم show_page_i = 1 this_func_get_html_ = this_func_get_html_ & <input type = text size = 4 maxLength = 10 name = func_input_page onMouseover = this.focus () ؛ onfocus = this.value = '& show_page_i &' ؛ onKeyup = value = value.replace (/[^1-9]/g ، '') onbeforepaste = clipboarddata.setdata ('text' ، clikpboarddata.getdata ('text'). استبدال (/[^1-9]/g ، '))> & vbnewline _ & <input type = button value = go onMouseover = func_input_page.focus () ؛ onClick = javaScript: var js_jumpvalue ؛ js_jumpvalue = document.all.func_input_page.value ؛ if (js_jumpvalue == ''! isnan (js_jumpvalue)) location = '& tiltage_ &' js_jumpvalue ؛ موقع آخر = '& topage_ & 1' ؛> & vbnewline آخر هذا _func_get_html_ = this_func_get_html_ & jump: <select name = menu1 onChange = var js_jumpvalue ؛ js_jumpvalue = this.options [this.selectedIndex] .value ؛ if (js_jumpvalue! = '') لأني = 1 إلى tpageCount this_func_get_html_ = this_func_get_html_ & <option value = & topage_ & i إذا كانت الصفحة = i ثم this_func_get_html_ = this_func_get_html_ & select style = 'color:#0000ff' this_func_get_html_ = this_func_get_html_ &> & cstr (i) & page </point> & vbnewline التالي this_func_get_html_ = this_func_get_html_ & </select> & vbnewline إنهاء إذا this_func_get_html_ = this_func_get_html_ & p_ & sp2 _ && nbsp ؛ <b> & page_rs.pagesize & </b> سجلات لكل صفحة ، الآن: <b> <span class = tx> & sp2_ & page & </span>/tpageCount ID = 'RecordCount'> & sp2_ & page_rs.recordCount & </b> سجلات. آخر لا يوجد سجل إنهاء إذا fpageCount = this_func_get_html_ وظيفة نهاية ٪> |
المشاركة: كيفية العثور على عنوان IP الحقيقي مع ASP كما نعلم جميعًا ، فإن طريقة الحصول على عنوان IP هي المحتوى التالي المرجع: <٪ = request.ServerVariables (Remote_addr) ٪>