اگر می خواهید اطلاعات خود را به صورت دلخواه همانند بالا در مشخصات ویندوز وارد کنید این مطلب را دنبال کنید
اگر می خواهید اطلاعات خود را به صورت دلخواه همانند بالا در مشخصات ویندوز وارد کنید این مطلب را دنبال کنید
این اتفاق یعنی Image hijacking در ویندوز زمانی رخ می دهد که کاربر یا یک بدافزار در رجیستری به آدرس زیر تغییراتی به وجود بیاورد.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
اگر آدرس بالا کلیدی با نام برنامه مورد نظر مانند taskmgr.exe
ساخته شود و در آن مقداری از نوع رشته با نام Debugger
ایجاد کنید می توانید در آن آدرس یک برنامه را بنویسید تا با برنامه اصلی جاییگزین شود و به جای آن اجرا شود و یا با خالی گذاشتن این مقدار مانع از اجرا شدن آن شوید. (در این مثال می توانید تر اجرا شدن برنامه Task manager تغییرات ایجاد کنید.)
توجه داشته باشید که این عمل برای هر فایل اجرایی قابل انجام است و حتی می تواند سبب اجرا نشدن نرم افزار های حیاتی ویندوز و ایجاد خطا شود؛ پس مراقب باشید. این شما هستید که می توانید از آن استفاده خوب یا بد بکنید!
در حال نوشتن چند خط کد بودم و نیاز داشتم که هربار کد را در یک کانال آیآرسی بفرستم تا کد بازبینی و اشتباهاتم گوشزد شود. از یک پیستبین(pastebin) استفاده میکردم و هربار پیوند نسخه جدید کد را به کانال میفرستادم اما این پروسه دردناک و آزار دهنده بود:
برای همین رفتم دنبال اینکه این فرآیند را کوتاهتر و خوشآیندتر کنم. برای اینکار از curl استفاده کردم. با اینکه کرل برای اکثر سیستمعاملها از جمله داس، ویندوز، مک، شبهیونیکسها و ... وجود دارد اما همچین چیزی بیشتر بدرد کاربرانی میخورد که با خط فرمان زیاد کار میکنند و این کاربران در ویندوز بدلیل عدم وجود یک خط فرمان قوی، کمتر دیده میشوند.
همونطور که می دونید ویندوز اجازه ساخت یک پوشه (یا Directory) با نام فاصله (white space) رو نمیده ولی میشه این کار رو با خط فرمان انجام داد. (به روز رسانی: در نسخه های جدید نمی توان این کار را از طریق windows powershell این کار را کرد ولی از طریق CMD میشه) کد های زیر رو حتما امتحان کنید (به جای X هر حرفی می تواند باشد):
md "X:\ \"
و سپس
md "X:\ \test"
این دو کد در خط فرمان باعث ایجاد یک پوشه به اسم فاصله می شود. حالا برید و ببینید ویندوز چه باگهایی سر این پوشه می ده. اول که پوشه رو باز می کنید چون کارکتر فاصله در آخر آدرس هست مرورگر فایل ویندوز (Windows Explorer) دچار یک اشتباه لپی شده و فاصله را در نظر نمی گیرد. پس به جای نشان دادن محتویات این پوشه که پوشه ای دیگر به نام test است، محتویات X:\
می دهد و اگر یک بار دیگر روی این پوشه با نام فاصله کلیک کنید پیغام هشداری می بینید که می گوید نمی تواند آدرس X:\ \ \
را پیدا کند. تنها راه دسترسی به پوشه test تایپ آدرس آن (X:\ \test
) در نوار آدرس است.
توجه: برای پاک کردن پوشه حتما از خط فرمان و دستور rmdir /s "X:\ \"
استفاده کنید در غیر این صورت امکان دارد کل فایل ها پاک شوند.
با این ترفند ساده و از طریق خط فرمان میتوانید فایل های حجیم را بسیار ساده و ظرف زمانی بسیار کمتر حذف کنید.خط فرمان را باز کرده و با توجه به سیستمعامل خود یکی از این دستورات را بزنید:
ویندوز/داس/امثالهم:
echo > filename del filenameیونیکس و شبه یونیکس(شامل گنو،لینوکس،بیاسدی ها،مک و ...):
> filename rm filename
همون طور که قبلا هم گفته بودم حداقل سیستم من با آبدیت های ویندوز 10 یکم مشکل داشت که یکی از اون ها خاموش نشدن سیستمم با استفاده از دکمه ی (shutdown) و یا استفاده از دستور shutdown /p
بود. با کمی جست و جو در اینترنت فهمیدم بعضی ها هم همین مشکل رو داشتند.
در این مدت که برای خاموش کردن (shutdown) ویندوز نیاز به اعمال زور و فشار و گرفتن دکمه ی پاور و استفاده از (emergency shutdown) داشتم. هیچ به فکر این نبودم که یکبار دیگه از دستور برای خواموش کردن سیستم استفاده کنم. تا این که بالاخره متوجه شدم که با استفاده از دستور shutdown /s
به جایshutdown /p
می تونم سیستمم رو به سادگی البته بعد از چند ثانیه انتظار خاموش کنم.
چند وقتی بود که این مخزن رو توی گیتهاب به لیست علاقهمندی ها اضافه کرده بودم، این دستورات برای راه اندازی یک وب سرور سادهی HTTP برای محتویات ایستا هستند(یعنی CGI و PHP و اینا پر!). این سرور ها همه به پورت ۸۰۰۰ گوش میدهند.
python3 -m http.server 8000
python -m SimpleHTTPServer 8000
ruby -rwebrick -e'WEBrick::HTTPServer.new(:Port => 8000, :DocumentRoot => Dir.pwd).start'
ruby -run -ehttpd . -p8000
php -S 127.0.0.1:8000
busybox httpd -p 8000
$Hso=New-Object Net.HttpListener;$Hso.Prefixes.Add("http://+:8000/");$Hso.Start();While ($Hso.IsListening){$HC=$Hso.GetContext();$HRes=$HC.Response;$HRes.Headers.Add("Content-Type","text/plain");$Buf=[Text.Encoding]::UTF8.GetBytes((GC (Join-Path $Pwd ($HC.Request).RawUrl)));$HRes.ContentLength64=$Buf.Length;$HRes.OutputStream.Write($Buf,0,$Buf.Length);$HRes.Close()};$Hso.Stop()
یا اگر خواستید با Command Prompt اجراش بکنید:
PowerShell.exe -nop -enc JABIAHMAbwA9AE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAEgAdAB0AHAATABpAHMAdABlAG4AZQByADsAJABIAHMAbwAuAFAAcgBlAGYAaQB4AGUAcwAuAEEAZABkACgAIgBoAHQAdABwADoALwAvACsAOgA4ADAAMAAwAC8AIgApADsAJABIAHMAbwAuAFMAdABhAHIAdAAoACkAOwBXAGgAaQBsAGUAIAAoACQASABzAG8ALgBJAHMATABpAHMAdABlAG4AaQBuAGcAKQB7ACQASABDAD0AJABIAHMAbwAuAEcAZQB0AEMAbwBuAHQAZQB4AHQAKAApADsAJABIAFIAZQBzAD0AJABIAEMALgBSAGUAcwBwAG8AbgBzAGUAOwAkAEgAUgBlAHMALgBIAGUAYQBkAGUAcgBzAC4AQQBkAGQAKAAiAEMAbwBuAHQAZQBuAHQALQBUAHkAcABlACIALAAiAHQAZQB4AHQALwBwAGwAYQBpAG4AIgApADsAJABCAHUAZgA9AFsAVABlAHgAdAAuAEUAbgBjAG8AZABpAG4AZwBdADoAOgBVAFQARgA4AC4ARwBlAHQAQgB5AHQAZQBzACgAKABHAEMAIAAoAEoAbwBpAG4ALQBQAGEAdABoACAAJABQAHcAZAAgACgAJABIAEMALgBSAGUAcQB1AGUAcwB0ACkALgBSAGEAdwBVAHIAbAApACkAKQA7ACQASABSAGUAcwAuAEMAbwBuAHQAZQBuAHQATABlAG4AZwB0AGgANgA0AD0AJABCAHUAZgAuAEwAZQBuAGcAdABoADsAJABIAFIAZQBzAC4ATwB1AHQAcAB1AHQAUwB0AHIAZQBhAG0ALgBXAHIAaQB0AGUAKAAkAEIAdQBmACwAMAAsACQAQgB1AGYALgBMAGUAbgBnAHQAaAApADsAJABIAFIAZQBzAC4AQwBsAG8AcwBlACgAKQB9ADsAJABIAHMAbwAuAFMAdABvAHAAKAApAA==
while true ; do nc -l 8000 < test.html ; done
نسخه پاورشل را خودم امتحان نکرده ام.
منبع و همچنین دستورات بیشتر برای اجرای وب سرور در گیتهاب گیست
شاید تا به حال با این مشکل مواجه شده باشید که برنامه یا بازی های مختلف نیاز به دات نت فیرم ورک (net framwork.) های مختلف داشته باضشد ولی نتوانید آن ها را روی ویندوز نصب کنید. در ویندوز 10 زمانی که فایل نصب فریم ورک را اجرا می کنید صفحه ای برای دانلود آن می آید که بسیار زمان بر است و در آخر هم با شکست مواجه می شوید. برای نصب فریم ورک کافیست از سی دی یا ایزو (iso) یا فلشی که ویندوز روش هست استفاده کنید.
با این روش شما می توانید هر چند فایلی را که می خواهید به عکس ضمیمه کنید و عکس آسیب نبیند و بدون نیاز به همراه داشتن فایل اضافه تری از خود عکس فایل ها را دوباره استخراج کنید. علاوه بر این ها می توانید در این روش از فایل های خود محافظت نیز بکنید.