meysampg

از چیزهایی که یاد می‌گیرم، می‌نویسم… :)

۴ مطلب در مرداد ۱۳۹۶ ثبت شده است

يكشنبه, ۲۹ مرداد ۱۳۹۶، ۰۳:۱۱ ب.ظ میثم پورگنجی
فیشینگ به زبان ساده

فیشینگ به زبان ساده

۱۸ اردیبهشت ۱۳۹۷: این پست برای اولین بار در ویرگول به این آدرس منتشر شده است.

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

آدرس سایت بانک شما filanbank.ir بوده و آدرسی که لینک توی ایمیل بود fiIanbank.ir. فرقشون چیه؟ ? تو دومی من l رو با i بزرگ نوشتم یعنی I. یعنی طرفی که میخواد اطلاعات شما رو بدزده رفته دامنه‌ی fiianbank.ir رو ثبت کرده، ولی داخل لینکی که برای شما فرستاد اونطور نوشته تا اگه قبل کلیک کردن خواستید از استوس‌بار مرورگر لینک رو چک کنید، شک نکنید!
شما وارد یک صفحه‌ی تقلبی شدید که کاملا شبیه صفحه‌ی اصلی‌ه، اطلاعات خودتون رو -که پر کیس هر چی میتونه باشه- وارد کردید و خلاص. این میشه کلی‌ترین و ساده‌ترین چیزی که تو فیشینگ میشه دید.

یک نمونه از ایمیل‌های تقلبی برای فریب کاربران (منبع: ویکی‌پدیا)
یک نمونه از ایمیل‌های تقلبی برای فریب کاربران (منبع: ویکی‌پدیا)

تو حالت پیچیده‌تر طرف میاد یکی رو تارگت میکنه، مثلا شما روزنامه‌نگارید و قراره عکس‌های شخصی شما رو بدزدن و ازش برای اهرم فشار استفاده کنن علیه‌تون. اینجا طرف اول میاد شروع میکنه در مورد شما اطلاعات جمع کردن -نکته: بهترین جا برای گرفتن اطلاعات در ظاهر بی‌ارزش ولی کاملا کاربردی، شبکه‌های اجتماعی‌ه- مثلا شما یروز توییت کردین «درخواست ثبت‌نام دادم برا فلان کتابخانه! یوهو!» و یروز دیگه گفته بودین که «(فلان گوشی اندرویدی) جدیدم بهتون سلام میکنه ?». اینجا طرف میاد یه سناریو می‌نویسه تَر و تمیز! فلان کتابخونه لیست کتابهاش تو سایتش هست، ۴۰ روز هم طول میکشه که عضویت شما تائید شه، پس میاد یه برنامه‌ی اندرویدی می‌نویسه حاوی اطلاعات کتاب‌های کتابخونه و روز ۳۳م برای شما یه ایمیل میاد که «هورا! پیش‌عضویت شما در کتابخانه‌ی فلان تائید شد! از طریق لینک زیر میتونید نرم‌افزار کتابخونه‌ی ما رو دانلود کنید و با یوزر پس زیر میتونید بهش وارد شید و کتاب‌هایی که علاقه دارید رو به لیست علاقه‌مندی‌های خودتون اضافه کنید تا بعدا راحت‌تر از کتابخانه‌ی ما استفاده کنید!». شما هم خوشحال نرم‌افزار رو دانلود می‌کنید و بدون توجه به پرمیژن‌ها نصب می‌کنید و وارد نرم‌افزار میشید و خیلی عادی شروع به استفاده می‌کنید. تبریک به اون خرابکار، الان به هر چی اطلاعات میخواد تو گوشی شما دسترسی داره :).

تا شما اجازه ندهید کسی نمی‌تواند از شما چیزی بدزدد! مواظب نرم‌افزارهایی که نصب می‌کنیم باشیم.
تا شما اجازه ندهید کسی نمی‌تواند از شما چیزی بدزدد! مواظب نرم‌افزارهایی که نصب می‌کنیم باشیم.

خب چیکار کنیم؟

  • ۱. کامل مطمئن شید که روی چه لینکی دارید کلیک می‌کنید!
  • ۲. حداقل تو ایران شما باید دنبال کار بدوئید و کسی نمیاد اینقدر کار رو براتون راحت کنه! مواظب باشید کجا دارید اطلاعات‌تون رو وارد می‌کنید.
  • ۳. چیزی که روی اینترنت میذارید -حتی خصوصی- مال شما نیست دیگه! دقت کنید چی میذارید.
  • ۴. اطلاعات حساس رو روی گوشی‌تون نگه ندارید یا حداقل توجه کنید که چی دارید از کجا نصب می‌کنید.
  • ۵. اگه اونقدر مهم هستید که کسی بخواد اینقدر دنگ و فنگ بکشه برای بدست آوردن اطلاعاتتون، دست راست‌تون روی سر من! یه سی تومن وام میخوام! نمیتونید جور کنید؟ ?.

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

۲۹ مرداد ۹۶ ، ۱۵:۱۱ ۰ نظر موافقین ۰ مخالفین ۰
میثم پورگنجی
پنجشنبه, ۲۶ مرداد ۱۳۹۶، ۰۳:۰۶ ب.ظ میثم پورگنجی
آدرس‌پذیری در گو

آدرس‌پذیری در گو

۱۸ اردیبهشت ۱۳۹۷: این پست برای اولین بار در ویرگول به این نشانی منتشر شده است.

دیو چنی توییت کرده که کد زیر چی چاپ میکنه؟

package main
import "fmt"
func f(u *uint) {*u++}
func main() {
 i := 0
 ‌f(&(uint)(i))
 fmt.Println(i)
}

بالطبع احتمالا همه انتظار داریم حاصل ۱ باشه، ولی این کد اصلا کامپایل نمیشه :)). دلیل خیلی ساده‌ست: «در گو شما فقط میتونی آدرس چیزایی رو استفاده کنی که آدرس‌پذیر باشن.». به بیان دیگه در گو فقط برای متغیرها، پوینترها، اسلایس‌ها، عناصر یک ساختار -=struct- و آرایه‌ها میشه آدرس رو داشت و پر واضح و مبرهن‌ه که در کد فوق، پارامتر ورودی f هیچ‌کدوم از اونها نیست. در این مورد اینجا رو ببینید.

۲۶ مرداد ۹۶ ، ۱۵:۰۶ ۰ نظر موافقین ۰ مخالفین ۰
میثم پورگنجی
چهارشنبه, ۱۸ مرداد ۱۳۹۶، ۰۲:۵۹ ب.ظ میثم پورگنجی
۱۰ چیز کوچیک که باهوش‌ترت میکنه!

۱۰ چیز کوچیک که باهوش‌ترت میکنه!

۱۸ اردیبهشت ۱۳۹۷: این پست برای اولین بار در ویرگول به این نشانی منتشر شده است.
امیروفسکی این مقاله را در توییتر شیر کرده بود که برای من عنوان اولین موردش جذاب بود! لاجرم به سنت دست دادن با اولین نفر در ورزشگاه و تا آخر رفتن، تا ته‌ش را خواندم. این پست ترجمه‌ی سریع، من‌برداشتی و آزادی است از آن مقاله، بدون هیچ وفاداری به اصل نوشته. تلاش بر این بوده است که برای بار دوم که آنرا می‌خوانم سریع داستان را بفهم‌م که چه بوده است. امید اینکه برای دیگری هم مفید واقع شود.

۱. در مورد استفاده از اینترنت هوشمندتر باش!

مسلما تو اینترنت کارهایی جز چک کردن مدام توییتر و استوری‌های اینستاگرام یا کانال گیزمیز هست! خب سعی کن از اونا -مثل ممرایز یا فرانش- استفاده کنی. مرسی.

۲. در مورد هر چی که یاد می‌گیری یچی بنویس.

بهترین راه برای اینکه وقتی یچی رو یاد می‌گیری یادت بمونه، اینه که در موردش بنویسی. با زبانی که خودت بفهمی، دقیقا مثل یادداشت‌های کنکور!

۳. یک لیست «خلاص!» درست کن!

همیشه یه لیست درست می‌کنیم از کارهایی که باید انجام بدیم، از این به بعد یه لیست هم داشته باش از کارهایی که کردی و گفتی «خلاص! اینم تموم شد!». این لیست حالت رو خوب میکنه و بهت اعتمادبنفس میده و موجب میشه کم‌کم قوی و قوی‌تر شی.

۴. آخ آخ از بازیای فکری!

یه بازی فکری انتخاب کن و بازی کن! چیزی که مجبورت کنه به فکر کردن! سودوکو شاید خوب باشه، ولی من این پازل منطقی‌ها رو دوست دارم!

۵. رُفقای باهوش داشته باش.

تو میانگین ۵تا آدمی هستی که اکثر اوقات دور و برتن! اگه جایی هستی که هر چی تو میگی درسته، داری اشتباه میزنی داداچ! سعی کن رفقایی داشته باشی که فکر کنن، بحث کنن و تو و حرفات رو به چالش بکشن!

۶. زیاد بخون.

تا میتونی بخون! هر چی متن درست درمون دم دستت هست بخون! علمی! تخیلی! روزنامه! آگهی استخدام! زندگی‌نامه‌ی آیت‌الله بهبهانی! هر چی! بخون! زیاد بخون! کم‌ترین فایده‌ش اینه که اونقد دایره‌ی لغاتت گسترده میشه که امکان رابطه‌ی بهتری با بقیه رو بهت میده و بهتر میتونی منظورت رو منتقل کنی.

۷. به بقیه توضیح بده!

به بقیه در مورد چیزی که بلدی جوری توضیح بده که بهش علاقه‌مند شن، ساده و محکم! اگه هم چیزی رو تازه داری یاد می‌گیری، جوری یاد بگیر که بتونی بری پیش بقیه در مورد کلیاتش توضیح بدی! کلا سعی کن توضیح بدی، بگرد دنبال گوش! [و بهترین جا برای گوش پیدا کردن، سمینارها یا لاگ‌ها هستن].

۸. هیئتی یچی یاد بگیر!

حالا اینقد ترمیک و آکادمیک و مثبت و رو خط یاد نگیری چیزی نمیشه بخدا! بعضی وقتا هم بسیجی‌طور بزن به خط و یچی یاد بگیر! ول کن می‌فهمی یا نمی‌فهمی، زخم کن و سعی کن بری جلو! برا یه آخر هفته چی میتونه جذاب‌تر از یچیز جدید یاد گرفتن باشه! یه زبان برنامه‌نویسی جدید یا یه غذای جدید! حتی ترکیب دلسترهای مختلف از رو یه آموزش! یجا به دردت میخورن! یاد بگیر!

۹. یه زبان جدید یاد بگیر.

یاد گرفتن یه زبان جدید بهت کمک میکنه هم چیزای جدید یاد بگیری و هم با آدمای بیشتری رابطه برقرار کنی و هم با فرهنگ‌های متفاوتی آشنا شی! روزی سه چهار کلمه از یه زبان رو یاد بگیر! در کنارش میتونی موسیقی‌های به اون زبان رو گوش بدی و این بهت کمک میکنه در زبان بیشتر پیشرفت کنی.

۱۰. بخواب بابا جان! بخواب!

کی نفر اول گفت کم‌خوابی نشونه‌ی خوبی‌ه؟ :/ آقا جان تا میتونی بخواب، اولا مغز فن نداره که خنک شه! و دوما هر چی یاد می‌گیره رو تو بافر نگه میداره! خواب به مغز کمک میکنه تا اطلاعات رو از بافر به یه محل بلندمدت‌تر منتقل کنه! همیشه و مخصوصا وقتایی که داری یچیز جدید یاد می‌گیری، مواظب خوابت باش! چرت بین یادگیری هم فراموش نشه!

۱۸ مرداد ۹۶ ، ۱۴:۵۹ ۰ نظر موافقین ۰ مخالفین ۰
میثم پورگنجی
دوشنبه, ۲ مرداد ۱۳۹۶، ۰۲:۴۷ ب.ظ میثم پورگنجی
مغالطه‌ی «من می‌اندیشم، پس هستم»

مغالطه‌ی «من می‌اندیشم، پس هستم»

۱۸ اردیبهشت ۱۳۹۷: این پست برای اولین بار در ویرگول به این نشانی منتشر شده است.

«من می‌اندیشم، پس هستم»: جمله‌ی معروفی که احتمالا برای حداقل یک مرتبه آنرا شنیده‌ایم. آغاز فاعل انگاشتن انسان، شروع پوزیتیویسم. این جمله در ابتدا آنقدر زیبا و بدیهی به نظر می‌رسد که اگر نه اینکه ذوق شنونده را برانگیزد که در اقل، تائید او را در پی خواهد داشت. اما آیا این جمله درست است؟ نکته‌ای که کمتر به آن فکر کرده‌ایم.

گزاره از دو بخش تشکیل شده است: من می‌اندیشم و من هستم که صورت منطقی آن «اگر من بیاندیشم، آنگاه من هستم» است. فرض «من می‌اندیشم» تنها فرضی است که قرار است بر طبق آن استنتاج صورت گیرد -که در غیراینصورت باید تمام مفروضات برای رسیدن به حکم ذکر شوند، اندیشیدن بدون هیچ وابستگی. حکم نیز «بودن» من است، یعنی چیزی که قرار است استنتاج شود این است که چون من می‌اندیشم، پس من وجود دارم و هستم. چیز بیشتری از این نمی‌خواهیم، اجازه دهید که فرض کنیم که نیستیم (و بالذاتِ فرض، نوعی از اندیشیدن را در اختیار داریم)، چون من اندیشه می‌کنم، پس طبق حکم مذکور، من هستم. من هستم و من نیستم و این تناقض است. در واقع تناقض از آنجا نشأت گرفته است که در استدلال دکارت، بصورت ضمنی در کنار اندیشیدن، بودن نیز مستتر است، اما از آنجا که مفروض اندیشیدن نداشتن هیچگونه وابستگی به بودن است، پس می‌توان فرض نبودن را نیز در نظر گرفت. فرض نبودن، در واقع اندیشیدن است در مورد نبودن و از اندیشیدن بودن نتیجه می‌شود! به نظر گزاره آنچنان که باید قدرتی در اثبات وجود ندارد.

بروزرسانی (۱۳ مرداد ۱۳۹۶). هایدگر عقیده دارد که دکارت این جمله را به عنوان قیاس صوری استفاده نمی‌کند و در نزد وی، هستم نتیجه‌ی اندیشیدن نیست و در حقیقت صورت عکس آنرا به عنوان بنیاد ماجرا استفاده می‌کند. او صورت قیاس صوری این گزاره را «id quod cogitat, est; cogito; ergo sum» می‌داند (اگر چیزی بیندیشد، هست؛ می‌اندیشم؛ پس هستم.». (نظرات این پست نیز روشنگر این مبحث است).

پ.ن: ابتدا کانت اینگونه به استدلال علیه «من می‌اندیشم، پس هستم» پرداخت. دمش گرم!

۰۲ مرداد ۹۶ ، ۱۴:۴۷ ۱ نظر موافقین ۰ مخالفین ۰
میثم پورگنجی