امروزه دگرگونی های شگرفی در زمینه فن آوری اطلاعات[1] رخ داده و پیشرفتهای آن فراگیر شده است. به طوری که روندهای دگرگونی را در زمینه های مختلف ایجاد کرده است. مهمترین ویژگی های آن سرعت زیاد در پردازش داده ها ، دقت بسیار زیاد ، سرعت بالای دسترسی به اطلاعات، به روز بودن، امکان مبادله الکترونیکی دادهها، کیفیت بالا، قیمت فوقالعاده ارزان و رو به کاهش می باشد و از سویی گسترش حجم عملیات و پیچیدهتر شدن امور پیش روی ما می باشد. با توجه به این عوامل دیگر نیازی به توجیه استفاده از فن آوری اطلاعات در دنیای امروز نخواهد بود و حسابداری نیز ناگزیر به کاربرد و استفاده از تمام یا برخی از روشهای نو در ارائه خدمات و وظایف خود می باشد. چرا که به گفته گری ساندم[2]رئیس پیشین انجمن حسابداران آمریکا، نقش اطلاعات در جامعه اهمیت بیشتری پیدا کرده پس تهیه کنندگان اطلاعات به خصوص حسابداران باید تهیه کننده اطلاعات پیشرفته و باکیفیت باشند تا خدمات شان با قیمت های بالا خریدار داشته باشد، در غیر این صورت در آینده جایگاهی نخواهند داشت
شکی نیست که فن آوری اطلاعات، جریان اطلاعات را بین شرکتهای تهیه کننده اطلاعات و استفاده کنندگان اطلاعات تغییر داده است. از سالها قبل کلیه مراحل چرخه حسابداری بجز گزارشگری به صورت الکترونیکی انجام می شدند. با این وجود، رشد فزاینده فن آوری اطلاعات از قبیل پیدایش اینترنت و ابزارهای آن و استفاده از آنها در گزارشگری ،از سال 1997 مکانیزم جدیدی را ایجاد کرده اند و گزارشگری مالی را به سمت گزارشگری مالی به هنگام[3] سوق داده اند. بدین صورت که با استفاده از [4]XBRL سامانه مالی یکپارچه شرکت به صورت مستقیم به اینترنت وصل می شود. بنابراین استفاده کنندگان از اطلاعات حسابداری در هر نقطه از جهان می توانند به وب سایت شرکت مراجعه کرده و هر لحظه صورتهای مالی را با آخرین تغییرات مشاهده و تجزیه و تحلیل کنند، حتی با استفاده از نرم افزارهای هوشمند[5] [6]ERP، [7]HTML، [8]XML، [9]XBRL و ... استفاده کنندگان میتوانند نسخه خود را برای گزارش دلخواه دستکاری نمایند. به این ترتیب، نیازی به چاپ و توزیع صورتهای مالی آن هم تنها در پایان سال مالی و میان دورهای نخواهد بود.(WWW. BILAN.IR) این نوع گزارشگری مالی که در آن اطلاعات از طریق اینترنت در همه حال در دسترس خواهد بود گزارشگری مالی به هنگام می گویند.
مقدمه
امنیت در دنیای واقعی ما امری اجتناب ناپذیر است و همگیمان
به نوعی سعی داریم تا امنیت را در محیط پیرامونمان ایجاد کنیم. همانطور که
شما برای ساختمان خود چندین کلید تعبیه می کنید، از ابزارهای امنیتی برای
کنترل ورود و خروج استفاده می کنید و حتی در سطح ابتدایی از حدود افراد
ناشناس به حیطه ی منزل خود جلوگیری میکنید، نشان می دهد که شما به امنیت
محیط زندگی خود اهمیت می دهید. در دنیای واقعی تضمین امنیت امری مهم، مشکل و
سخت می باشد. همچنین هزینه ی بالای این ضمانت نیز قابل توجه است. برای
مثال بسیاری از پروژه ها با هزینه ای معلوم ساخته می شود ولی برای اخذ مدرک
و جهانی شدن باید هزینه ای معادل چند ده برابر هزینه ی ساخت پروژه خرج شود
تا صحت و امنیت سیستم مورد تأیید قرار گیرد. در دنیای پیچیده ی مجازی
اینترنت امنیت نمودی دیگر دارد، این تفاوت می تواند بیان کننده ی پیچیدگی
خاص این سطح از امنیت دارد. برای مثال اگر شما سایتی در اینترنت به صورت
فعال داشته باشید و هزینه ی زیادی برای طراحی و پیاده سازی برنامه ی
کاربردی خود خرج کرده باشید، بسیار متعجب خواهید شد اگر ببینید که سایت شما
مورد حمله قرار گرفته و تقریباً تخریب شده است. این حمله بسیار سخت و غیر
قابل درک است. این امر در مورد سایت های تجاری و یا بانک های اعتباری
الکترونیکی بسیار خطرناک است. چرا که با حملهای به این سیستم احتمال خاش
شدن اطلاعات حساب هزاران نقد وجود دارد. پس این سطح از امنیت بسیار مهم و
حیاتی می نماید و اگر شما نتوانید تصویر قابل قبول و مطمئنی از سایت خود
ایجاد کنید آنگاه یا تمامی مشتریان خود را از دست خواهید داد و تجارت
الکترونیک شما نابودی شود یا اینکه اطلاعات مشتریان فاش شده تبعات قانونی
این اقدام، اعم از شکایات مشتریان دامن شما و شرکت شما را میگیرد. به همین
علت ایجاد یک ساختار ایمن سخت افزاری و نرم افزاری و فیزیکی تجهیزات شما
یکی از واجبات ساخت یک برنامهی کاربردی موثر در سطح شبکه است. این پروژه
که در پیش روی دارید شما را با انواع تهاجمات و حملات به سایت های مختلف و
طرق نفوذ به برنامههای کاربردی آشنا می کند. به صورت خلاصه با انواع
ابزارهای خاص حمله اعم از ویروس ها، کرم ها، برنامه های ولگرد، تکنیک اسب
تروا آشنا می کند. در ادامه به بررسی چگونگی حملات معروف در طول تاریخ شبکه
می پردازیم، دزدان کارتهای اعتباری را از حیث عملکرد با بقیه ی هکرها
مقایسه می کنیم و تکنیک های جلوگیری از هک شدن را آموزش می دهیم.
در انتها می توانید با مروری هر چند اجمالی بر چند برنامه ی کاربردی با دنیای واقعی برنامه نویسی شبکه آشنا شوید.
این
مرور به شما کمک می کند تا دیدتان را در مورد امنیت (Security) و قابلیت
اجرایی (Functionality) تصحیح کنید و بتوانید برنامه ی خود را ایمن کنید.
به کمک این قسمت از پروژه اهمیت تست امنیت داده را خواهید فهمید و آن را در
ابتدای اهداف خود خواهید گنجانید. نکته ی جالب در فصول بعد بیان اصول
امنیت داده، فهمید و آن را در ابتدای اهداف خود خواهید گنجانید. نکته ی
جالب در فصول بعد بیان اصول امنیت داده، تحلیل امنیت، و به طور کلی دانستن
معنای واقعی امنیت داده می باشد. حملات به برنامه های خاص از راه دور نیز
جزء فصول مطرح شده می باشد. در این بخش به تحلیل Script های از خانواده ی
زبانهای معروفی چون java و Perl و ... نیز میپردازیم. بیان مفهوم Active X
نیز از قلم ها خارج نشده است و تحلیل سیاستهای کلی تعیین امن و ناامن
بودن برنامه ای نیز از اهداف انتهایی این پروژه است. در ضمن یادآور می شویم
که در طرح و بررسی این پروژه از منابع دیگری نیز استفاده شده است. می توان
از وبلاگ های مختلف که یادداشتهای گاهاً، موثر و با ارزش که نویسان حرفه
ای را نیز در بر می گرفته نام برد. همچنین سایتهایی که اطلاعاتی هر چند
جزئی و مقدماتی نیز در اختیار ما گذارده اند نیز جزء منابع خاص ما می
باشند. در کل در این حوزه اطلاعات سطح شبکهی جهانی اینترنت بسیار محدود می
باشد و به جز چند سایت برجسته که حتی هزینه هایی را نیز طلب می کردند،
دیگر سایت خاصی با اطلاعات مناسب برای تنظیم و تهیهی یک پروژهی علمی و
کاملاً حرفه ای، وجود نداشت و به همین علت منبع اصلی ما در این پروژه کتاب
تعیین شدهی Hack Proofing می باشد که جزء ارزنده ترین کتب در این سطح
میباشد. در خاتمه این پروژه را به تمامی اندیشمندان عرصهی علوم کامپیوتر و
جامعهی علمی کشور و تمامی کسانی که به فنون اینترنت و کامپیوتر علاقه مند
هستند تقدیم می کنیم باشد که قدمی هر چند کوچک در ارتقای آگاهی علمی و فنی
دانشجویان برداشته باشیم. همچنین همانطور که هیچ موجودی در جهان هستی خالی
از خطا و اشتباه نیست ما نیز از این قاعدهی جهان شمول مبرّا و مجزا
نیستیم.
فهرست مطالب
فصل اول :نگاهی به هکرها و شیوه عملکردشان
مقدمه
هکر به چه معناست
اهداف هکر
روشهای نفوذ هکرها
اصول ابتدایی برای گریز از کرک شدن
استفاده از FAKE PAGE ها
مهندسی اجتماعی چیست؟
ترو جان ها
تکنیکهای انتخاب کلمه عبور
استاندارد 17799ISO
فیشینگ Phishing چیست؟
مشخصات مشترک بین فیشینگ و ایمیل
قوانین مواجهه با عملیات فیشینگ
روشهای معمول حمله به کامپیوترها
برنامه های اسب تراوا
اسکریتیهای Cross-site
ایمیلهای جعلی
پسوردهای مخفی فایل
حملات Pharming چیست؟
بررسی زینای واقعی
دیواره آتش Fire walls
فصل دوم : به کارگیری اصول امنیت
مقدمه
امنیت به عنوان یک زیربنا
امنیت فراتر از یک کلمه رمز
اول خطرات سطح بالا و مهمتر را برطرف نمایید.
امنیت به عنوان یک محدودیت
تهاجم DDOS چیست؟
تهاجمات مصرف منبع
کالبد شکافی یک تهاجم سیل SYN
کالبد شکافی یک تهاجم DDOS
ابزارهای مهاجمین برای انجام خدمات DDOS
روشهای اساسی حفاظت
فیلترسازی ورودی و خروجی
محکم کردن پپکربندیهای دیوار آتش
اجرای یک مرور کننده (Scanner) آسیب پذیری
مقایسه قابلیت های امنیت سرور وب
تصدیق (Authentication)
کلمات عبور
گواهی نامه ها و امضاهای دیجیتالی
به کارگیری برنامه های کاربردی CGI
IIS
پورت ها، سرویس ها و اجزاء بلا استفاده را غیر فعال کنید.
اسکریپت ها و فایل های غیر لازم را پاک کنید
هک کردن کلمه عبور و ابزار تجزیه و تحلیل
فصل سوم: متدولوژی هک کردن
- مقدمه
درک سطوح و شرایط
- خلاصه ی تاریخچه ی هک کردن
1- سیستم هک کردن تلفن
2- سیستم هک کردن کامپیوتر
- عوامل تحریک هکرها چیست؟
1- عوامل غیر اخلاقی محرک هکرهای بداندیش
2- کارکردن با حرفه ای ها عرصه ی امنیت داده ها
3- کم کردن مشکلاتی با به خدمت گرفتن سیستم امنیتی
- شناخت انواع حملات در سیستم های موجود
- Dos/ DDos
- ویروسهای هک کننده
- اسب تروآ
- کرمها
- برنامه های ولگرد
- دزدی کردن
1- دزدان کارتهای اعتباری
2- دزدان موجودیها (هویت)
3- در خلال و راه زنان اطلاعات
- درک شیوه ی سیستم پیشگیری کننده امنیتی برنامه های کاربردی و تهدیدات آن
1- اخلالهای پنهان
2- پارامترهای جعلی و پنهان
3- برش ابتدایی
4- پر شدن و سرریز بافر
5- شیرینی زهرآلود
- جلوگیری از هک شدن با روش فکر کردن مثل یک هک کننده
فصل چهارم : چگونه از تبدیل شدن به یک برنامه نویس سطح پایین جلوگیری کنیم.
مقدمه
برنامه نویسان ایجاد کنندهی کدهای بی ارزش کیستند؟
از قانون تبعیت کنیم.
وقتی برنامه نویسی می کنیم خلاقیت داشته باشیم
اجازهی فکر کردن به خود بدهید.
برنامه های ماژولار درست تر کار می کند.
ساخت کد در فضای تهی
ساخت برنامه های معین و قابل اجرا و ایجاد امنیت داده ها
در آخر بدانید برنامه ی که من قابل اجراست!
بجنبید و برنامه هایتان را امن و قابل اجرا کنید.
فصل پنجم درک رابطه خطرها با mibile code
مقدمه
تشخیص ضربه حملات Mobile code
ماکروها و اسکریپتهای خرابکار
زبانهای ماکرو (VBA)
مشکلات امنیتی با VBA
ویروس melisa
حملات در برابر ویروسهای WBA
Javascript
امنیت در Javascript
جاوااسکریپت و مشکلتی که پدید می آورند
مشکلات امنیتی
حملات web-bused Email
بازنگری مهندسی اجتماعی (Social engineering)
پایین آوردن خطرات امنیتی Javascript
VBscrpt
امنیت در VBscrpt
مشکلات امنیت در VBscrpt
پیشگیریهای امنیتی VBscrpt
برنامه های کاربری جاوا
مشکلات امنیتی در java
نگاهی به کنترلهای Activex
مشکلات امنیتی با Activex
اشتباه در انتقال و جایگزینی کاراکترها
غیرفعال کردن کنترلهای Activex
متعلقات ایمیل
برنامه های امنیتی
کشف کنننده های حفره ها
نرم افزار فایروار
فصل ششم ایمن کردن کدهای جاوا
مقدمه
جلوگیری از مشکلات ناشی از جاوا ، جاوا اسکریپت و Active x
برنامه نویسی اسکریپ های ایمن
سیاست امنیت چیست
ارزش در برابر ریسک
سیاست امنیت می بایست شامل چه عناصر باشد
هجومهای دسترسی به فایل
تهاجمات اطلاعات غلط
هجوم های دسترسی به فایل / بانک اطلاعاتی ویژه
شامل 255 صفحه word
قبل از بررسی " تجارت الکترونیکی "، لازم است در ابتدا یک تصویر ذهنی مناسب ازتجارت سنتی را ارائه نمائیم.
در صورت شناخت " تجارت " ، با " تجارت الکترونیکی "نیز آشنا خواهیم شد.
برای واژه "تجارت" در اکثر واژه نامه ها تعاریف زیر ارائه شده است :
مبادلات اجتماعی : تبادل ایده ها ، عقاید و تمایلات ( خواسته ها ) مبادله
یا خرید و فروش کالا در مقیاس بالا که شامل ترابری از نقطه به نقطه دیگر
است. در ادامه تعریف دوم ارائه شده برای "تجارت " را بعنوان محور بحث
انتخاب و بر روی آن متمرکز خواهیم شد. تجارت در ساده ترین نگاه ، مبادله
کالا و خدمات بمنظور کسب درآمد ( پول ) است . زندگی انسان مملو از
فرآیندهای تجاری بوده و تجارت با میلیونها شکل متفاوت در زندگی بشریت نمود
پیدا کرده است . زمانیکه کالای مورد نظر خود را از یک فروشگاه تامین و
خریداری می نمائید ، در تجارت شریک و در فرآیندهای آن درگیر شده اید.در
صورتیکه در شرکتی مشغول بکار هستید که کالائی را تولید می نماید ، درگیر
یکی دیگر از زنجیره های تجارت شده اید.
تمام جلوه های تجارت با هر
رویکرد و سیاستی دارای خصایص زیر می باشند : خریداران . افرادیکه با
استفاده از پول خود قصد خرید یک کالا و یا خدمات را دارند. فروشندگان .
افرادیکه کالا و خدمات مورد نیاز خریداران را ارائه می دهند. فروشندگان به
دو گروه عمده تقسیم می گردند : خرده فروشان ، که کالا و یا خدماتی را
مستقیما" در اختیار متقاضیان قرار داده و عمده فروشان و عوامل فروش ، که
کالا و خدمات خود را در اختیار خرده فروشان و سایر موسسات تجاری می نمایند.
تولیدکنندگان . افرادیکه کالا و یا خدماتی را ایجاد تا فروشندگان آنها را
در اختیار خریداران قرار دهند. یک تولید کننده با توجه به ماهیت کار خود
همواره یک فروشنده نیز خواهد بود. تولیدکنندگان کالای تولیدی خود را به
عمده فروشان ، خرده فروشان و یا مستقیما" به مصرف کننده گان می فروشند.
همانگونه که مشاهده می گردد ، "تجارت " از زاویه فوق دارای مفاهیم ساده ای
است . تجارت از خرید یک محصول ساده نظیر " بستنی " تا موارد پیچیده ای نظیر
اجاره ماهواره را شامل می گردد. تمام جلوه های تجارت از ساده ترین سطح تا
پیچیده ترین حالت آن ، بر مقولاتی همچون : خریداران ، فروشندگان و
تولیدکنندگان متمرکز خواهد بود. عناصر تجارت زمانیکه قصد معرفی عناصر ذیربط
در تجارت و فعالیت های تجاری وجود داشته باشد ، موضوعات و موارد مورد نظر
بدلیل درگیر شدن با جزئیات پیچیده تر بنظر خواهند آمد.
عناصر ذیل تمام
المان های ذیربط در یک فعالیت تجاری معمولی را تشریح می نماید. در این حالت
، فعالیت شامل فروش برخی محصولات توسط یک خرده فروش به مصرف کننده است :
*
در صورت تمایل فروش محصول و یا محصولاتی به یک مصرف کننده ، مسئله اساسی
داشتن کالا و یا خدماتی خاص برای عرضه است . کالا می تواند هر چیزی را شامل
گردد. .فروشنده ، ممکن است کالای خود را مستقیما" از تولید کننده و یا از
طریق یک عامل فروش تهیه کرده باشد. در برخی حالات ممکن است فروشنده ، خود
کالائی را تولید و بقروش می رساند.
* فروشنده برای فروش کالا و یا خدمات
می بایست " مکانی مناسب " را در اختیار داشته باشد. مکان مورد نظر می
تواند در برخی حالات بسیار موقتی باشد. مثلا" یک شماره تلفن خود بمنزله یک
مکان است . در چنین مواردی متقاضی کالا و یا خدمات با تماس تلفنی با
فروشنده قادر به ثبت سفارش و دریافت کالای مورد نظر خود خواهد بود. برای
اکثر کالاهای فیزیکی می بایست مکان ارائه کالا ، یک مغازه و یا فروشگاه
باشد.
مقدمه1
فصل اول - تجارت الکترونیک 2
فصل دوم - شناسایی سیستم 14
2-1- امکان سنجی و نیاز سنجی14
2-2- مراحل انجام کاری19
2-3- تعیین وظایف و نقشه سایت21
2-4- پایگاه داده ها و ERD23
2-5- طراحی سیستم و DFD ها33
فصل سوم- ابزارهای مورد استفاده در انجام این پروژه43
3-1- ASP.NET44
3-2- پایگاه داده SQL48
فصل چهارم- کدها و توابع مهم برنامه51
4-1- کد های مربوط به رفتن به صفحات دیگر51
4-2- کد های مربوط به اتصال برنامه به پایگاه داده SQL52
4-3- باز کردن پایگاه داده انجام عملیات و بستن پایگاه داده54
4-4- استفاده از اطلاعات داخل DS54
4-5- مقابله با خطا ها55
4-6- دستورات مربوط به Sign in 56
4-7- کدهای مربوط به ثبت نام کاربر61
4-8- ابزار مربوط به صفحه Product63
4-9- کدهای زمان اجرای صفحه Product 67
4-10- کدهای مربوط به انتخاب گروه در صفحه Product 69
4-11- کدهای مربوط به جستجو در صفحه70
4-12- کدهای مربوط به انتخاب محصول 72
4-13کدهای مربوط به صفحه بارگذاری صفحه Order 74
4-14- کدهای مربوط به دکمه ADD در صفحه Order77
4-15- کدهای مربوط به تایید و خرید سفارشات در صفحه Orders 79
4-16- کدهای مربوط به دکمه تایید خرید در صفحه CheckCredits 80
فصل پنجم- نحوه کار با سایت87
فصل ششم- جمع بندی و نتیجه گیری105
شامل 112 صفحه word