xss – اصلاح عنصر HTML که بعد از عنصر اسکریپت می آید

من در حال یادگیری حملات اسکریپت سایت است.

من می خواهم رفتار یک عنصر HTML را از طریق جاوا اسکریپت تغییر دهم.

این بی اهمیت است، اگر جاوااسکریپت تزریقی بعد از باشد، عنصر مورد نظر قبلا تعریف شده است. برای مثال:

اصلاح کردن من

این، اما این ممکن نیست که کد وارد شده قبل از عنصر مورد نظر باشد. مانند این:


من را اصلاح کنید

این یک خطا را ایجاد می کند Uncaught TypeError: نمی توانم propertyHiddenHTML را از null تنظیم کنم

من می توانم


من را اصلاح کنید

window.setTimeout () خوب است، برای تغییر ویژگیهایی که از کاربر مانند src از برچسب a پنهان است، اما به راحتی قابل توجه در مورد برچسب های قابل مشاهده مانند

. آنچه من دنبال آن هستم یک روش جهانی است که با تمام برچسبها کار میکند و برای کاربر قابل مشاهده نیست.

تزریق sql – تک و دو URL کدگذاری اسکریپت tamper و SQLmap

من در حال تلاش برای درک چگونگی کارکرد اسکریپتهای تروجان sqlmap کار می کنم و وقتی هر یک از آنها قادر به عبور از فیلترهای خاصی هستند. در کد زیر پس از پارامتر POST برای رشته هایی مانند فیلتر OR AND را انتخاب کنید که برنامه نویس آن را وارد خطا می کند (که اشتباه است).


$ filtered = str_replace ($ filtered_words، $ zap، $ _POST ["id"])؛
$ filtered = urldecode ($ filtered)؛
$ sql = "SELECT user، pass from users WHERE id = '". $ فیلتر شده ""؛

در نتیجه من توانستم با استفاده از chardoubleencode با استفاده از اسکریپت tamper که دوبار رمزگذاری را رمزگذاری می کرد، از آن استفاده کردم. با این حال، زمانی که خط زیر را حذف کردم، انتظار داشتم که با استفاده از charencode که یک بار مجدد کد را رمزگذاری می کند، می توانم از حفاظت دور بمانم.

من می دانم که آدرس PHP کدگذاری و رمزگشایی پارامترهای POST پرواز می کند، اما من می خواهم بدانم زمانی که اسکریپت charencode می تواند از یک مکانیزم حفاظت عبور کند.

بسیار پیش از این خیلی ممنون.

ids – اسکریپت مرورگر برای اطلاع از طریق ایمیل اسکن؟

من از Bro استفاده میکنم بنابراین میخواهم Bro به من یک ایمیل برای هر اسکن در برابر شبکه ما ارسال کنم، من می دانم که باید یک اسکریپت برای این بنویسم، این اسکریپت را بنویس:

load policy / misc / scan.bro قلاب Notice :: policy (n: توجه: نوع) {
  اگر (n $ note == Scan :: Address_Scan) {
      اضافه کردن عملیات n [Notice::ACTION_EMAIL]}

}

اما من هر نتیجه ای داشتم و می خواهم بدانم کجا این اسکریپت را ذخیره می کنم

محاسبه در مقابل با جاوا اسکریپت

نه چندان دور من در کنار خط مشی کولاتز، مشکل ریاضی بسیار جالب که هر کسی هنوز برای پیدا کردن اثبات برای آن آمده است. محتوا Collatz، در غیر این صورت به عنوان مشکل 3n + 1، به نظر می رسد بسیار ساده است که هر کسی می تواند وسوسه شود برای رسیدن به آن برای رسیدن به اثبات.

من شنیده ام که این حدس در برخی از نقطه توقف پیشرفت در ریاضیات بود هر ریاضیدان روی آن کار می کرد، تلاش می کرد تا این اثبات را پیدا کند.

بنابراین گمانه کولتز چیست؟

گزاره کولاتز یک فرض در ریاضیات به نام لوتار کولاتز است و خلاصه آن: اگر شما هر عدد طبیعی را می گیرید [19659005] n اگر آن را حتی تقسیم آن توسط 2 (برای دریافت n / 2 ) اگر آن را عدد صحیح آن را ضرب 3 و اضافه کردن 1 (برای دریافت 3n + 1 ) و اگر این پروسه را به صورت بازگشتی و نامحدود تکرار کنید، در نهایت به مرحله اول می رسیم.

به عنوان مثال اجازه می دهیم شماره 20 ، این ترتیب است که شما دریافت خواهید کرد:

20، 10 (20/2)، 5 (10/2)، 16 (3 * 5 + 1)، 8 (16/2)، 4 (8/2)، 2 (4/2)، 1 (2/2)

همانطور که می بینید ما ev به طور انحصاری 1 رسیده است.

این مقاله در مورد فرمول بندی های مختلف از یک حدس است: معکوس

رابطه معکوس

فرمول اصلی بیان می کند که تمام اعداد طبیعی در نهایت منجر به یک با استفاده از رابطه معکوس می توانیم خودمان را به اثبات برساند که به طور خلاف آن است که 1 به تمام اعداد طبیعی منتهی می شود.

رابطه معکوس Conjecture Collatz

رابطه معکوس تا حدودی پیچیده و پیچیده تر از اصل 3n + 1 است طول می کشد تا سر خود را به اطراف بچرخانید. این بر اساس محاسبات مدولار، نماد هماهنگی توجه است (≡):

برای هر عدد صحیح n، ≡ 1 (mod 2) iff 3n + 1 ≡ 4 (mod 6). معادل (n-1) / 3 ≡ 1 (mod 2) iff n ≡ 4 (mod 6)

برای حدس معکوس، ما باید از پایین، از 1. در این فرمول من علاقه مند ( n – 1) / 3 ≡ 1 (mod 2) iff n ≡ 4 (mod 6) part

پس چه چیزی به ما می دهد؟ با استفاده از این بخش می توانیم عددهای عددی را از شماره داده شده شناسایی کنیم، چرا که مفید است، زیرا فقط گاهی اوقات عددی عدد بالاتر از تعداد داده شده وجود خواهد داشت و در هر زمان حتی عدد (see Pic. above، 2n always present) 19659022] اگر n ≡ 4 (mod 6) سپس (n-1) / 3 ≡ 1 (mod 2)

در سایر کلمات جاوا اسکریپت:

اگر (n-4)٪ 6 = 0، (n – 1) / 3 و این شماره
((n – 1) / 3)٪ 2 = 1 (odd)

اجازه می دهد تا آن را بررسی کنید، از 1:

(1-4 )٪ 6! = 0 بدین معناست که تعداد عددی بالاتر از 1 در توالی Collatz وجود ندارد، اما ما می دانیم که وجود خواهد داشت حتی (* 2) عدد، بنابراین عدد بالاتر از یک خواهد شد 2.

ادامه می دهد با 2 :

(2-4)٪ 6! = 0، به این معنی است که هیچ عدد عدد بیش از 2 وجود ندارد، فقط حقیقت: 2 * 2 = 4

ادامه 4:

(4-4 )٪ 6 = 0، به این معنی که یک عدد عدد بیش از 4 وجود دارد و این عدد (4-1) / 3 است که یکی است. ما برگشتیم به جایی که ما شروع کردیم، و این حلقه است، فرضیه کالارتز «ناهنجاری»، آن چرخه 1 → 4 → 2 → 1 . ما در حال حاضر به آن اهمیتی نمی دهیم، بنابراین ما باید یک شرایط دیگر برای عدد های عجیب ما اضافه کنیم:

ما فقط می توانیم از یک عدد عدد استفاده کنیم اگر آن برابر با 1 نیست: (n-1) / 3! = 1 [19659032] در حال حاضر ما می توانیم فقط تعداد عجیب و غریبی را نادیده بگیریم و ادامه دهیم حتی: 8

(8-4)٪ 6! = 0، ما فقط بالاتر از 8 است که 16 است.

تا کنون این Collatz پایین ترین توالی: 1-2-4-8-16

بیایید ببینیم که چه اتفاقی خواهد افتاد:

(16-4)٪ 6 = 0 تعداد عدد بیش از 16 وجود دارد و آن (16-1) / 3 = 5، همانگونه که می دانیم همیشه هم یک عدد حقیقی وجود دارد

در حال حاضر می دانیم که 2 عدد بالاتر از 16: 5 و 32 وجود دارد، در اینجا می توانیم یک شکل درخت را ببینیم:

درخت معکوس Collatz

و هنگامی که ما همان فرآیند را برای 32 و 5 تکرار خواهیم دید که چگونه این درخت رشد خواهد کرد.

اکنون، هنگامی که ما کمی با آرایتفتاسیون پس از فرمول معکوس کلامز کولتز روشن می شویم، ما در نهایت می تواند چیزی را به برنامه نویسی تبدیل کند. همانطور که قبلا می دانید زبان مورد نظر برای اجرای زمین بازی جاوا اسکریپت است، با توجه به این که تنها از ویژگی های زبان بومی استفاده خواهم کرد بدون هیچ گونه عوارضی.

سطوح ساده لینک کمتر

اولین کاری ساده که می توانیم انجام دهیم این است یک آرایه آرایه را پر کنید، هر آرایه زیر به اعداد در یک سطح درختی مربوط می شود:

درخت دودویی

همانطور که شما ممکن است متوجه شوید، نتایج محاسبه یک درخت دودویی نامتعادل یا حتی جستجو باینری را ایجاد می کند درخت، با جایگزینی بزرگتر از و کمتر از ، شرایط با ساده odd a حتی . من در اینجا ساختار دادههای درختی باینری سفارشی را ایجاد نخواهم کرد، اما این مقاله شایسته مقاله جداگانه ای است، اما ما می دانیم که می توانیم درخت دودویی را به صورت ساختار داده های ضمنی با استفاده از آرایه های بومی نماییم:

در این ترتیب جمع و جور، اگر یک گره یک شاخص i، فرزندان آن در شاخص 2i + 1 (برای فرزند چپ) و 2i + 2 (برای سمت راست) یافت می شود، در حالی که پدر و مادرش (در صورت وجود) در شاخص (i-1) / 2 (فرض می شود ریشه شاخص صفر است.

همانطور که می بینید این یک ایده واقعا بد بود و کاملا یک راه حل فضایی برای توالی کولاتز نبود. من فکر می کنم ممکن است راه هایی برای بهینه سازی وجود داشته باشد، اما قطعا در خارج از محدوده این مقاله است.

نتیجه گیری

بخش پیچیده ای در Conjecture معکوس کولاتز، ریاضیات در پشت آن است، پس می توانید خود را انجام دهید پیاده سازی، ذخیره سازی و راه حل های محاسباتی، همانطور که در مثال 2 بالا ذکر شد. همه چیز بستگی به روش کار شما دارد و برای اطلاعات، تجزیه و تحلیل، تجسم یا چیز دیگری نیاز دارید.

و فقط به عنوان یک سلب مسئولیت، اما اگر شما در حال خواندن این مقاله شما احتمالا قبلا می دانید، که یک رشته JavaScript جاوا اسکریپت CPU مناسب برای محاسبه و تجزیه و تحلیل واقعی سنگین نیست. دلیل اینکه من با آن بازی کردم تجسم آینده از نتایج، برای رسم نمودارها و درختان بسیار است، در اینجا ما فقط از آرایتکتیوهای اولیه استفاده می کنیم.