بایگانی نویسنده: امیرخسرو

DNS

کنترل درخواست های DNS توسط روتر سیسکو DNS Doctoring

DNS

کنترل درخواست های DNS توسط روتر سیسکو DNS Doctoring 

کنترل درخواست های DNS توسط روتر سیسکو DNS Doctoring

من هیچ وقت و به هیچ وجه توصیه نمیکم که مثل اینها که فکر میکنند خیلی اعجاب انگیز است که یک روتر سیسکو بتواند DNS Server هم باشد ! چون از نطر من اصلا برای این کار بهینه نشده این یک فعالیت غیر معمول است و کار تمیزی نیست ! ولی اگر شما سرچ کنید Configure Cisco Router as DNS server مقادر انبوهی سایت میبینید که طوری مطلب را تعریف کرده اند که انگار روتر قرار است با شما بشیند و سیگار بکشد و درد و دل کند ….

من به شخصه معتقدم بهترین استفاده از این فیچر میتواند در هاست های local روی خود روتر باشد ، بدین ترتیب که شما هیچ Resolver ی برای روتر تعریف نکنید و از این کامند هم محض بی ربطی استفاده کنید no ip domain lookup  !

بعد میتوانید هاست های مورد نیاز را دستی تعریف کرده و از شر لاشخورهایی که در عرض 2 روز ترافیک DNS خود را به سمت روتر شما سرازیر میکنند خلاص کنید ! من برای اثبات اینکه این فیچر در حالت Resolver بدرد نخور ترین امکانیست که طراح در یک روزی که به شدت مست بوده به ذهن نئشه اش خطور کرده و آنرا در IOS چپانده ، بر روی پلت فرم های مختلف ، این سرویس را run و ترافیک مثلا 8.8.8.8 را بر رویش سرازیر کردم و با ناباوری ، روتر 7206 VXR G2 و ISR 3945 کاملا بالای 85% لود داشتند ! پس به این نتیجه میرسیم که حتی به این مسئله فکر هم نکنید …

مسئله دیگر DNS Doctoring in Some way است ! بدین معنی که شما بتوانید در شبکه خود رفتار و پاسخ DNS Request ها را به نفع خود و یا بقیه کنترل کنید . کاری که در حال حاظر مخابرات ایران انجام میدهد !

شما تصور کنید که میخواهید ، مشترکین از هر DNS سرور Public روی اینترنت که استفاده کردند ، ترافیک DNS به سمت DNS Server مورد نظر شما روانه و پاسخ های مورد نظر شما دریافت شود ، برای مثال شما میخواهید همیشه مثلا فلان URL به آدرس فیلترینگ شما که مثلا 10.10.11.11 است ، Poiny کند ، راه حل چیست ؟

بعضی اقدام به بومی سازی یا Localize ممودن DNS سرور های مشهور مثل 8.8.8.8 4.2.2.4 192.9.9.3 , … می نمایند ، که این روش بسیار کودکانه و اشتباه است ، حال من چه پیشنهادی دارم ؟ به نظر بنده مردم را نباید محدود کرد ، بروند و ببینند که کجا را فتح میکنند ، ولی شما محدودیت میخواهید ، راهش این است :

روش کار به این صورت است که ما کا ترافیک DNS خروجی شبکه را TAG میکنیم و به سمت DNS سرور خودمان سرازیر میکنیم و در DNS Server خودمان هر بلایی که خواستیم ، سر Request ها میاوریم !

ابتدا تگ کردن ترافیک :

Aka-Core-Router(config)#ip acce e 110
Aka-Core-Router(config-ext-nacl)#per udp an an eq 53
Aka-Core-Router(config-ext-nacl)#per tcp an an eq 53
Aka-Core-Router(config-ext-nacl)#den
Aka-Core-Router(config-ext-nacl)#deny ip an
Aka-Core-Router(config-ext-nacl)#deny ip any an
Aka-Core-Router(config-ext-nacl)#deny ip any any
Aka-Core-Router(config-ext-nacl)#exit

route کردن ترافیک به DNS Server مورد نظر :

Aka-Core-Router(config)#route-map dns per 10
Aka-Core-Router(config-route-map)#match ip address 110
Aka-Core-Router(config-route-map)#set ip next-hop 217.218.127.127
Aka-Core-Router(config-route-map)#exit
Aka-Core-Router(config)#route-map dns per 20
Aka-Core-Router(config-route-map)#exit

 با اعمال کردن این Route-Map به اینترفیس خروجی اصلی یا هر اینترفیس که مورد نظر ماست ، و کانفیگ DNS Server خود ، میتوانید کل کرافیک DNS را فارغ از اینکه کاربر از چه DNS سروری استفاده میکند ، به سمت DNS Server مورد نظر سرازیر نمود.

تست :

Before :

C:\Users\Aka>nslookup – 8.8.8.8
Default Server: google-public-dns-a.google.com
Address: 8.8.8.8
> yahoo.com
Server: google-public-dns-a.google.com
Address: 8.8.8.8
Non-authoritative answer:
Name: yahoo.com
Addresses: 206.190.36.45
98.138.253.109
98.139.183.24

After :

C:\Users\Aka>nslookup – 8.8.8.8
Default Server: google-public-dns-a.google.com
Address: 8.8.8.8
> yahoo.com
Server: google-public-dns-a.google.com
Address: 8.8.8.8
Non-authoritative answer:
Name: yahoo.com
Address: 10.10.11.11

C:\Users\Aka>nslookup – 4.2.2.4
Default Server: d.resolvers.level3.net
Address: 4.2.2.4
> yahoo.com
Server: d.resolvers.level3.net
Address: 4.2.2.4
Non-authoritative answer:
Name: yahoo.com
Address: 10.10.11.11

ملاحظه میکنید که پاسخ Request های ما به آنچه دوست داشتیم تغییر کرده و این بعنی زور !!

البته شما میتوانید به جای یک DNS Server خارجی ، ازخود روتر استفاده کنید ، که البته کمی کانفیگ متفاوت میشود ، ولی با توجه به توصیه های ابتدایی پست ، من به هیچ وجه توصیه نمیکنم .

نکته دیگری هم که ممکن است دوستان وارد و مهندس به من و این نوشتار وارد کنند شاید این باشد که این کار DNS Doctoring نیست ، باید عذض کنم که بنده هم عرض کردم که DNS Doctoring in some way ولی در کل منظور از DNS Doctoring ، ترجمه درخواست های DNS حالا مثلا توسط ASA سیسکو است . البته که این هم بضاعت ماست !

 

Control Plane و حفاظت از منابع روتر

control plane

Control Plane و حفاظت از منابع روتر 

Control Plane یکی از ویژگی های حفاظتی IOS است که از ورژن 12.3 به آن افزوده شده وهدف آن حفاظت از روتر و منابع آن و سرویس های حیاتی ست .

بدین معنی که Control Plane به عنوان یک پلیس رفتار کرده و با کمک از قابلیت های QOS ، سلامت سرویس های حیاتی نظیر Routing و میزان استفاده از RAM و CPU و I/O های روتر را کنترل و تضمین میکند .

برای مثال میتوان از Control Plane جهت کنترل ترافیک ناخواسته UDP که به نوعی Attack جهت بالابردن یوتلایز CPU و پر کردن اینترفیس آن است ، استفاده کرد .

بعضی از کاربران یک شبکه برای اهداف پلید اقدام به استفاده از بعضی از ابزار های تست شبکه در راه نا صحیح و به جهت وارد آوردن خسارت به شبکه میپردازند ، اساس کار برخی از این قبیل ابزار ها ، ارسال ترافیک UDP با تعداد پکت های زیاد و کوچک به سمت IP قربانی که در این مثال Router شبکه است ، میباشد .

البته تعداد پکت ها و سایز آنها ، قابل تنظیم است ، ولی منطقا هرچه تعداد پکت ها بیشتر و سایز آنها کوچکتر باشد ، لود بیشتری را میتواند تحمیل کند که باعث over load شدن CPU روتر شده و مانع از کارکرد صحیح ان میگردد .

شما فرض کنید در یک شبکه LAN که ارتباط کاربر فرضا با سرعت 100 مگابیت است ، این کاربر اقدام به ارسال پکت های 64 کیلوبایتی نماید ،

همانطور که در تصویر زیر مشاهده مینمائید ، روتر مورد آزمایش ما 2811 cisco با حدود 28 مگابیت ترافیک پکت UDP ، کاملا خارج از دسترس میگردد و CPU روتر ، over load میشود .

udp-attack

udp-attack

این فقط یک آزمایش ساده با یک ابزار بسیار ساده و در دسترس همه است !! پس قضیه جدیست !

راه حل چیست !؟

ما از Control Plane استفاده میکنیم ، بدین ترتیب که Control Plane با کمک QOS اولویت و میزان این ترافیک ها را محدود و از وارد آوردن ترافیک سنگین به روتر و شبکه جلوگیری میکند .

خود هاست روتر به خودی خود ، ارتباطات محدودی با دنیای بیرون دارد ، مثلا  Telnet , SSH ,NTP,Syslog , Snmp و چند قلم دیگر البته به جز روتینگ پروتکل ها ، منظور از هاست روتر خود روتر است نه ترافیکی که از روی روتر ترانزیت میشود .

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

ابتدا ما یک ACL تعریف و در آن ترافیک ناخواسته UDP را تعیین میکنیم .

ip access-list e udp-traffic
permit udp any any

سپس یک کلاس تعریف و این ACL زا در آن Match میکنیم :

class-map match-any udp-traffic
match access-group name udp-traffic

سپس یک policy-map با استفاده از این کلاس :

policy-map udp-traffic
class udp-traffic
police rate 5 pps con transmit ex dro violate-action drop

هم اکنون لازم است این پالیسی را در ناحیه control-plane پیاده سازی کنید ،

control-plane host
service-policy input udp-traffic

 این policy بدین معنیست که تعداد پکت های UDP به مقصد خود هاست روتر ، باید زیر 5 پکت در ثانیه باشد و بیشتر از آن Drop میشود .

البته این یک مثال ساده و ابتدایی بود ، در عمل شما باید به نکات و ظرایف بیشتری توجه کنید و میتوانید از انواع Service Policy های مختلف مثل port-filtering و queue-threshold در ترافیک های ترانزیت شده از روی روتر هم بهره ببرید .

در کل این فیچر IOS به جهت حفظ سلامت و پایداری Router و سرویس های حیاتی نظری راتینگ پروتکل ها و پروتکل های دسترسی به روتر ، به وجود آمده و استفاده از امکانات QOS به شما امکانات زیادی در پیاده سازی استراکچر های امنیتی خواهد داد .

 نتایج :

Router#sh control-plane host counters
Control plane host path counters :

Feature Packets Processed/Dropped/Errors

——————————————————–
TCP/UDP Portfilter 385632/380830/0

——————————————————–

و همچنین میتوانید از این دستور به جهت بررسی استفاده از policy-map استفاده کنید :

Router#sh policy-map control-plane all

   وفقک الله
Aka Networks

 

BOGON و راه حل رهائی از بوگون ها چیست ؟

bogon چیست ؟

 

BOGON و راه حل رهائی از بوگون ها چیست ؟

Bogon ها ، اساسا IP آدرس های بی نام و نشانی هستند که در دیتابیس هیچ یک از پروایدر های IP جهانی مثل RIPE هنوز Allocate نشده اند و فعلا در انحصار کسی نیستند ، پس اصولا کسی نباید آنها را Advertise کند .

ابتدا گریزی بزنیم به اساس کار سازمان های ثبت IP ،

بر اساس فتاوای سازمان های ثبت IP مثل Ripe ncc ، هیچ شخص یا سازمانی صاحب آدرس های IP نیست ، و این آدرس ها مثل اکسیژن به همه مردم تعلق دارند ، یعنی مثلا در زمانی شخصی نیاز به IP دارد و این IP در اختیار آن شخص تا زمان رفع نیاز قرار میگیرد و کسی نمیتواند حتی یک تک IP را بخرد و تا ابد در اختیار خود نگه دارد و در واقع فقط IP را اجاره میکند .

LIR ها همان نمایندگان سازمان های ثبت IP در هر کشور هستند و هر کشور میتواند چند ده و حتی چند صد LIR داشته باشد و مردم بنا به نیاز مثل ISP ها سازمان ها ، ادارات ، شرکت ها ، به این شرکت ها مراجعه و یک یا چند IP یا بلاک IP را اجاره میکنند ولی هیچ گاه برای همیشه این آدرس ها به آنها تعلق نمیگیرد .

روال کار به این شکل است که وقتی مثلا یک ISP یک prefix /24 از آدرس IP را از یک LIR اجاره میکند ، آن LIR آن پریفیکس را به نام آن ISP ثبت کرده و یک Route Object برای آن شخص در دیتابیس RIPE ایجاد میکند که بر اساس آن به مسریاب های اصلی Backbon های اینترنت میگوید که این پریفیکس از مثلا AS12880 ادورتایز میشود ، حال این AS میتواند AS خود آن ISP یا AS پروایدر دست بالایی آن ISP باشد .

بنا بر توضیحات فوق ، همه موضف اند فقط پریفیکس هائی را به peer های BGP خود ادورتایز کنند که متعلق با آنهاست و در دیتابیس جهانی دارای Route object است ، اما …

همیشه مثلا انسان هایی هستند که احساس زرنگی میکنند و فکر میکنند که چون مثلا یک پریفیکس /24 از IP وجود دارد که هیچ صاحبی ندارد ، پس صاحبش آنها هستند :دی ! اما زهی خیال باطل ، چون اخیرا قوانین انقدر سختگیرانه شده که ، تا Route object برای یک کلاس وجود نداشته باشد ، اولین Router اصلی ، این IP را Route نمیکند و drop میشود !

به هر حال ، چون همه router های مسیر تابع RIB نیستند ، همیشه IP های بی صاحبی هستند که دارای route هستند ، متاسفانه !

چاره چیست ؟! حفره سیاه یا همان Black Hole !

بدین معنی که جمعیت های خیری هستند که برای منافع من و شما اقدام به راه اندازی Route Server هائی جهت فیلتر کردن BOGON ها مینمایند ، بدین ترتیب که شما میتوانید با آنها یک BGP Peering برقرار کرده و آنها لیست Bogon ها را برای شما Advertise میکنند و شما میتوانید همیشه یک لیست Update از این آدرس ها داشته و چون در Routing Table شما مسیر به آنها که همانا Null Routing است ، وجود دارد ، با خیال راحت زندگی کنید ! به همین راحتی !

البته روش های دیگری نیز مثل DNS و HTTP نیز برای رهایی از بوگون ها وجود دارد ، ولی برای پروایدر ها و ISP هایی که در حدی هستند که معضل Bogon را احساس کنند ، BGP راه حل بهتریست !

برای نمونه تعدادی از BOGON های دریافتی که البته تعداد فعلی آنها به 4898 پریفیکس میرسد :

*> 0.0.0.0/8 38.229.66.20 0 65332 i
*> 5.45.32.0/20 38.229.66.20 0 65332 i
*> 5.133.64.0/18 38.229.66.20 0 65332 i
*> 5.200.128.0/17 38.229.66.20 0 65332 i
*> 5.252.0.0/15 38.229.66.20 0 65332 i
*> 10.0.0.0 38.229.66.20 0 65332 i
*> 14.1.24.0/21 38.229.66.20 0 65332 i
*> 14.1.96.0/19 38.229.66.20 0 65332 i
*> 14.102.160.0/19 38.229.66.20 0 65332 i
*> 14.192.0.0/19 38.229.66.20 0 65332 i
*> 23.90.0.0/15 38.229.66.20 0 65332 i
*> 23.92.0.0/14 38.229.66.20 0 65332 i
*> 23.104.0.0/13 38.229.66.20 0 65332 i
*> 23.112.0.0/12 38.229.66.20 0 65332 i
*> 23.128.0.0/10 38.229.66.20 0 65332 i
*> 23.128.0.0/9 38.229.66.20 0 65332 i
*> 23.212.0.0/14 38.229.66.20 0 65332 i
*> 23.216.0.0/13 38.229.66.20 0 65332 i
*> 23.224.0.0/11 38.229.66.20 0 65332 i
*> 24.30.224.0/19 38.229.66.20 0 65332 i
*> 24.41.96.0/19 38.229.66.20 0 65332 i
*> 24.50.32.0/19 38.229.66.20 0 65332 i
*> 24.50.160.0/19 38.229.66.20 0 65332 i
*> 24.51.0.0/19 38.229.66.20 0 65332 i
*> 24.51.224.0/19 38.229.66.20 0 65332 i
*> 24.53.96.0/19 38.229.66.20 0 65332 i
*> 24.53.192.0/19 38.229.66.20 0 65332 i
*> 24.54.64.0/19 38.229.66.20 0 65332 i
*> 24.102.64.0/18 38.229.66.20 0 65332 i
*> 24.104.160.0/19 38.229.66.20 0 65332 i
*> 24.104.192.0/18 38.229.66.20 0 65332 i
*> 24.105.64.0/18 38.229.66.20 0 65332 i
*> 24.129.192.0/19 38.229.66.20 0 65332 i
*> 24.140.224.0/19 38.229.66.20 0 65332 i
*> 24.143.128.0/18 38.229.66.20 0 65332 i
*> 24.146.32.0/19 38.229.66.20 0 65332 i
*> 24.146.64.0/18 38.229.66.20 0 65332 i
*> 24.152.0.0/17 38.229.66.20 0 65332 i
*> 24.156.160.0/19 38.229.66.20 0 65332 i
*> 27.0.128.0/17 38.229.66.20 0 65332 i
*> 27.54.144.0/21 38.229.66.20 0 65332 i
*> 27.96.88.0/21 38.229.66.20 0 65332 i
*> 27.100.4.0/22 38.229.66.20 0 65332 i
*> 27.100.36.0/22 38.229.66.20 0 65332 i
*> 27.109.124.0/22 38.229.66.20 0 65332 i
*> 27.111.72.0/22 38.229.66.20 0 65332 i
*> 27.112.112.0/21 38.229.66.20 0 65332 i
*> 27.112.120.0/22 38.229.66.20 0 65332 i
*> 27.116.40.0/22 38.229.66.20 0 65332 i
*> 27.122.60.0/22 38.229.66.20 0 65332 i
*> 31.13.184.0/21 38.229.66.20 0 65332 i
*> 31.22.8.0/21 38.229.66.20 0 65332 i
*> 31.132.8.0/21 38.229.66.20 0 65332 i
*> 31.132.32.0/19 38.229.66.20 0 65332 i
*> 31.133.96.0/21 38.229.66.20 0 65332 i

   وفقک الله

Aka Networks

 

ایمن سازی روتر سیسکو – Secure Cisco Router

روتر سیسکو امنیت روتر سیسکو

ایمن سازی روتر سیسکو

حالا که بحث امنیت روتر پیش امده ، بد نیست یک چند نکته را هم مد نظر داشته باشیم ،

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

1 – پورت های خطرناک را ببندید :

130 deny tcp any any range 135 140 (497235 matches)
140 deny udp any any range 135 140 (8303931 matches)
150 deny tcp any any eq 445 (24650346 matches)
160 deny tcp any any eq 449 (11 matches)
170 deny tcp any any eq daytime (39 matches)
180 deny tcp any any range 27000 27020 (6547 matches)
190 deny udp any any range 27000 27020 (290 matches)
200 deny tcp any any range 1024 1030 (24568 matches)
210 deny tcp any any range 1363 1380 (174634 matches)
220 deny udp any any eq 11751 (23 matches)
230 deny tcp any any eq 11751 (441 matches)
240 deny udp any any eq 1434 (10814 matches)
250 deny tcp any any eq 1433 (536911 matches)
260 deny udp any any eq 1433 (193 matches)
270 deny tcp any any eq 1434 (9133 matches)
280 deny tcp any any eq 554 (191 matches)
290 deny tcp any any eq 7070 (225 matches)
300 deny tcp any any eq 2773 (5923 matches)
310 deny tcp any any eq 54283 (590 matches)
320 deny udp any any eq echo (812 matches)
330 deny tcp any any eq echo (44 matches)
340 deny tcp any any eq discard (44 matches)
350 deny udp any any eq 554 (204 matches)
360 deny udp any any eq 7070 (8 matches)
370 deny tcp any any eq 8866 (261 matches)
380 deny tcp any any eq 9898 (230 matches)
390 deny tcp any any eq 10000 (271 matches)
400 deny tcp any any eq 10080 (1031 matches)
410 deny tcp any any eq 12345 (432 matches)
420 deny tcp any any eq 17300 (221 matches)
430 deny tcp any any eq 8554 (255 matches)
440 deny udp any any eq 8554 (8 matches)
450 deny udp any any eq 4444 (90 matches)
460 deny tcp any any eq 4444 (3850 matches)
470 deny tcp any any eq 5554 (369 matches)
480 deny udp any any eq 1500 (173 matches)
490 deny tcp any any eq 1919 (8152 matches)
500 deny tcp any any eq 2967 (5250 matches)
510 deny udp any any eq 2967 (101 matches)
520 deny tcp any any eq 1425 (10084 matches)
530 deny tcp any any eq 6667 (18607 matches)
540 deny tcp any any eq 8943 (221 matches)
550 deny tcp any any eq 4662 (3630 matches)
560 deny tcp any any eq 1034 (2946 matches)
570 deny tcp any any eq 81 (9123 matches)
580 deny tcp any any eq 8181 (420 matches)
590 deny tcp any any eq 2339 (6884 matches)
600 deny tcp any any eq 31337 (331 matches)
610 deny tcp any any eq 2745 (6134 matches)
620 deny tcp any any eq 37 (39 matches)
630 deny tcp any any eq 1500 (9704 matches)
640 deny tcp any any eq 1501 (9367 matches)
650 deny tcp any any eq 1502 (9473 matches)
660 deny tcp any any eq 1503 (9126 matches)
670 deny udp any any eq 1501 (160 matches)
680 deny udp any any eq 1502 (258 matches)
690 deny udp any any eq 1503 (168 matches)
700 deny tcp any any eq 1214 (11340 matches)
710 deny udp any any eq 65506 (326 matches)
720 deny udp any any eq 3410 (158 matches)
730 deny udp any any eq 3128 (148 matches)
740 deny udp any any eq 3127 (202 matches)
750 deny udp any any eq 8080 (207 matches)
760 deny udp any any eq 1111 (408 matches)
770 deny udp any any eq 8998 (9 matches)
780 deny udp any any eq 27374 (51 matches)
790 deny udp any any eq 1214 (107 matches)
800 deny udp any any eq 9999 (36 matches)
810 deny udp any any eq tftp
820 deny udp any any eq 2745 (208 matches)
830 deny tcp any any eq 1080 (10329 matches)
850 deny tcp any any eq sunrpc (42 matches)
860 deny tcp any any eq nntp (46 matches)
870 deny tcp any any eq drip (4244 matches)
880 deny tcp any any eq exec (1 match)
890 deny udp any any eq rip (1 match)
900 deny udp any any eq ntp (58094 matches)
910 deny tcp any any eq 2283 (6850 matches)
920 deny tcp any any eq 2535 (6262 matches)
930 deny udp any any eq 1026 (1711 matches)
940 permit ip any any (864701348 matches)
950 permit icmp any any

لازم است یک ACL با سیاست خودتان و مثلا پورت های عمومی خطرآفرین تهیه ، و انرا روی اینترفیس ورودی اعمال کنید.

conf t
int gig0/0
ip acce firewall in
ip acce firewall out

2 – باز هم توصیه میشود ، دسترسی Telnet را با SSH خایگزین کنید ، یا حداقل پورت telnet را بر طبق مقاله قبل عوض کنید.

 

تعویض پورت تلنت

 

3 – آدرس های عمومی را در درگاه وروردی اینترنت جهت جلوگیری از Spoofing ببندید و یک نکته حرفه ای اینکه یک BGP Peering با شبکه team-cymru برقرار کنید و ورودی route ها را باز بگذارید ، این شرکت IP های BOGON را برای شما ارسال میکند و این لیست خود به خود آپدیت و جلوی route شما به این دسته از IP ها را میگیرد :

http://www.team-cymru.org/Services/Bogons/bgp.html

access-list 111 deny ip 127.0.0.0 0.255.255.255 any
access-list 111 deny ip 192.168.0.0 0.0.0.255 any
access-list 111 deny ip 172.16.0.0 0.0.255.255 any
access-list 111 deny ip 10.0.0.0 0.255.255.255 any
access-list 111 deny ip host 0.0.0.0 any
access-list 111 deny ip 224.0.0.0 31.255.255.255 any
access-list 111 deny icmp any any redirect

3 – دسترسی SNMP را یا ببندید ، یا محدود کنید :

no snmp-server or >
snmp-server community SnMp@@!!123 RO 197
ip acce e 197
permit udp “trusted host ips” host “router ip” eq snmp
deny ip any any

4 – به جای enable password از enable secret استفاده کنید و پسورها را hash کنید :

service password-encryption

enable secret 5 f68a7a14ff272beddf3a6a3d3632158b/

username amirkhosro privilege 15 secret 5 $f68a7a14ff272beddf3a6a3d3632158b$.

این باعث میشود که دسترسی به پسورد شما حتی اگر کسی فایل کانفیگ روتر را هم داشته باشد غیر ممکن شود ، چون MD5 مثلا یک الگریتم یک طرفه است !

5 – سرویس بازنگاری پسورد را غیر فعل کنید ،

بدین ترتیب اگر کسی دسترسی فیزیکی هم به روتر پیدا کند نمیتواند پسور شما را ریکاور کند !

Aka-Core-Router(config)#no service password-recovery
WARNING:
Executing this command will disable password recovery me
chanism.
Do not execute this command without another plan for
password recovery.

Are you sure you want to continue? [yes/no]:yes

6 – سرویس های بدرد شما نخور را disable کنید !

Disable Echo, Chargen and discard
no service tcp-small-servers
no service udp-small-servers

Disable finger
no service finger

Disable the httpd interface
no ip http server

Disable ntp (if you are not using it)
ntp disable

Disable source routing
no ip source-route

Disable Proxy Arp
no ip proxy-arp  روی تمامی اینترفیس ها

Disable ICMP redirects
interface gig0/0
no ip redirects    روی تمامی اینترفیس ها

Disable Multicast route Caching
interface gig0/0 (your external interface)
no ip mroute-cache   روی تمامی اینترفیس ها

Disable CDP
no cdp run

Disable direct broadcast (protect against Smurf attacks)
no ip directed-broadcast روی تمامی اینترفیس ها

7 – فقط IP های ست شده روی هر اینترفیس را مجاز کنید مثلا :

Aka-Core-Router#sh run int fastEthernet 0/1.300
Building configuration…

Current configuration : 281 bytes
!
interface FastEthernet0/1.300
description esfehan
encapsulation dot1Q 300
ip address 217.218.1.1 255.255.255.248
no ip redirects
no ip unreachables
no ip proxy-arp
end
Aka-Core-Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Aka-Core-Router(config)#ip acce e 130
Aka-Core-Router(config-ext-nacl)#per ip 217.218.1.0 0.0.0.7 an
Aka-Core-Router(config-ext-nacl)#per ip 217.218.1.0 0.0.0.7 any
Aka-Core-Router(config-ext-nacl)#per icmp any any
Aka-Core-Router(config-ext-nacl)#deny ip any any
Aka-Core-Router(config-ext-nacl)#exit
Aka-Core-Router(config)#int fas 0/1.300
Aka-Core-Router(config-subif)#ip acce 130 in

و صد البته روی اینترفیس خروجی ، فقط IP های شناخته شده شبکه خودتان را اجازه ترانزیت ترافیک بدهید

مثلا شما یک کلاس /24 دارید 217.218.1.0/24 :

Aka-Core-Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Aka-Core-Router(config)#ip acce e 131
Aka-Core-Router(config-ext-nacl)#per ip 217.218.1.0 0.0.0.255 any
Aka-Core-Router(config-ext-nacl)#per ip any 217.218.1.0 0.0.0.255
Aka-Core-Router(config-ext-nacl)#per icmp any any
Aka-Core-Router(config-ext-nacl)#deny ip any any
Aka-Core-Router(config-ext-nacl)#exit
Aka-Core-Router(config)#int gig 0/0 ( outside interface )
ip acce 131 in
ip acce 131 out

8 – همه چیز را لاگ کنید :

logging trap debugging
logging 192.168.1.10

البته خیلی راه ها وجود دارد برای افزایش امنیت یک مسیریاب ، مثلا کنترل منابع در control-plane و و و …

این نکات همانطور که در ابتدا اشاره شد ، حداقل کارهایی است که میبایست برای امنیت مسیریاب انجام دهید و صد البته همین نکات را به این شسته رفتگی در هیچ منبعی پیدا نخواهید کرد 😉

همیشه بدانید ، ارزش یک روتر سیسکو ، از جان شما بیشتر است و امنیتش از جان همسرتان …

 

وفقک الله
Aka Networks

telnet

تعویض پورت تلنت روتر سیسکو – Change Telnet Port on Cisco Routers

تعویض پورت تلنت روتر سیسکو

 Change Cisco Default Telnet Port

تعویض پورت تلنت روتر سیسکو

یکی از مسائلی که ممکن است باعث به خطر افتادن امنیت روتر های مرزی که دارای IP Valid روی پورت های خود میباشد ، عملیات Burst Force برای پیدا کردن دسترسی Telnet میباشد .

در درجه اول توصیه میشود که به جای تلنت از SSH استفاده کنید ، ولی اگر به هر دلیلی مثل خود من ، با تلنت احساس بهتری دارید ، بهتر است این چند توصیه را جهت Secure کردن Line های VTY اعمال نمائید .

در درجه اول چند کامند :

login on-failure log
login on-success log
login delay 3
aaa authentication attempts login 1
aaa authentication fail-message c یک پیغام تهدید آمیز c
aaa authentication login default local-case

دو کامند اول ، یک trap برای ورود یا عدم ورود موفق به syslog ارسال میکند
کامند سوم ، بعد از ورود 3 ثانیه تاخیر ایجاد میکند ، که بسیار کاراست !
دستور بعدی ، تنها 1 بار اجازه authenticate به جای 3 بار Default میدهد
و دستور پنجم جهت ایجاد رعب و وحشت در شخصی است که به هر دلیلی میخواهد وارد روتر شما شود !
شما میتوانید بنویسید که IP شما ثبت خواهد شد و مورد پیگیری قانونی قرار خواهد گرفت .
و دستور آخری باعث مشود که روتر به حروف بزرگ و کوچک در Username حساس شود ، پس از حروف برگ هم در یوزر استفاده کنید !

و اما قسمت شیرین داستان ، تعویض پورت پیشفرض تلنت یعنی 23 به مثلا 3001 است !

AkaNet-VG#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
AkaNet-VG(config)#ip acce e telnet
AkaNet-VG(config-ext-nacl)#permit tcp any any eq 3001
AkaNet-VG(config-ext-nacl)#deny ip any any
AkaNet-VG(config-ext-nacl)#exit
AkaNet-VG(config)#line vty ?
<0-988>  First Line number
AkaNet-VG(config)#line vty 0 988
AkaNet-VG(config-line)#rotary 1
AkaNet-VG(config-line)#access-class telnet in
AkaNet-VG(config-line)#^Z

توضیح اینکه ، ابتدا ما یک access-list به نام telnet ایجاد میکنیم و در آن تمامی ارتباطات به جز پورت 3001 را deny میکنیم.

سپس وارد تنظیمات line vty که همان telnet و ssh خودمان است میشویم که بسته به مدل روتر و IOS تعداد آن متفاوت است .

سپس rotary group 1 را اعمال میکنیم که همان پورت 3001 است ، مثلا 2 ، 3002 و ….

سپس access-list telnet را که در آن تمامی ارتباطات به جز پورت 3001 ، deny شده را اعمال میکنیم و save و تمام.

حالا تست میکنیم :

Aka-Core-Router#1.1.1.1
Trying 1.1.1.1 …
% Connection refused by remote host
Aka-Core-Router#1.1.1.1 3001
Trying 1.1.1.1, 3001 … Open
Aka-Networks-VG
User Access Verification
Username:

میبینید که ابتدا با پورت دیفالت 23 ، کانکشن refused شد ، ولی با پرت 3001 ، ارتباط برقرار شد !!

این یکی از تریک های ناب سیسکو ست ، که شما به ندرت میتوانید آنرا در اینترنت به این سادگی و شسته رفتگی بیابید .

اگر یک acl همراه با logging بر روی پورت ورودی روتر خود قرار دهید ، بسته به تعداد IP های موجود ، تعداد زیادی تلاش جهت ارتباط بر روی پورت 23 خواهید دید ! من در یک ساعت حدود 200 تلاش نافرجام مشاهده کردم ، که نشان دهنده تعداد زیادی بدخواه برای اینجانب است !!

رمضان الکریم مبارک
     التماس دعاء
  Aka Networks

CDN یا شبکه توزیع محتوا چیست ؟!

CDN یا شبکه توزیع محتوا چیست ؟!

CDN یا شبکه توزیع محتوا چیست ؟!

CDN یا شبکه توزیع محتوا چیست ؟!

امنیت ، سرعت ، دسترسی – مفاهیمی هستند که ذهن همه سرویس دهنده های محتوا را درگیر خود کرده !

حتما برای شما نیز مهم است که سایت شما از نقاط مختلف دنیا سریع باز شود و یا اینکه اطلاعات پرتال شما در چند سرور نگهداری شود .

اساس کار در CDN ، نگهداری ، به روز رسانی و سرویس دهی سایت شما در دیتا سنتر های متفاوت در نقاط مختلف دنیاست.

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

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

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

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

دفعه بعدی که به شبکه بوووووق سر زدید ، به استاتوس باز مرورگر خود توجه کنید ، کلمه CDN را بارها خواهید دید ، که همان DNS های متفاوتی است که شبکه بووووق برای دیتا سنتر های خود در نظر گرفته .

یک توصیه برادرانه هم از من بپذیرید :

هر کس که نام و مشخصات خود و دوستان خود را به شبکه اجتماعی بوووووق اضافه می‌کند باید بداند که به شکل رایگان در خدمت دستگاه‌های اطلاعاتی آمریکاست و این گنجینه اطلاعاتی را برای آنها تکمیل می‌کند … و اگر نه این همه هزینه از کجا می آید ؟!؟!!؟! تبلیغات ؟!

and it’s up to you ….