Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Разработка программы определяющей имя компьютера и

Его ip -адрес.

 

Постановка задачи и определение основных

Целей программы.

Поставлена задача составить программу которая могла бы получать  имя компьютера (рабочей станции), определять его ip-адрес в сети и выводить эти данные на экран. Программа должна работать в среде Win32, использовать минимум ресурсов, быть достаточно компактной и написанной на языке высшего уровня.

Принцип работы программы.

Для написания программы был использован язык программирования макро Ассемблер (MASM).

Использовались следующие библиотеки: wsock32.lib, user32.lib, kernel32.lib, gdi32.lib.

При запуске программы (exe файла) она обращается через АР-функции к динамическим библиотекам Windows и получает из них необходимые данные, далее через АР-функции выводит полученные данные (имя и ip-адрес рабочей станции) на экран в стандартном для Windows окне, окно фиксированного размера.

Программа скомпилирована с включением makefile (файла сборки). makefile считает что в директория masm32 находится на том же накопителе и – в стандартной instalation позиции. Так же имеется файл используемых программой ресурсов.

Рис. 7.2.1. Внешний вид окна программы


Выводы

Безопасность — это комплекс мер, принимаемых для предотвращения потери или раскрытия информации в сети. Поскольку невозможно абсолютно устранить вероятность потери в пригодных к работе систе­мах, определенная степень риска неизбежна, и безопасность си­стемы должна основываться на фундаменте предоставления доступа только надежным принципалам безопасности (пользователям или компьютерам).

Для управления безопасностью любая система должна:

•   контролировать доступ;

•   идентифицировать пользователей;

•   ограничивать или разрешать доступ;

•   записывать деятельность пользователей;

•   осуществлять закрытое взаимодействие между системами;

•   минимизировать риск неправильной конфигурации.

Шифрование, процесс сокрытия сообщения при помощи математиче­ского алгоритма (шифра), и секретное значение (ключ), известное только легитимным сторонам, образуют основу всей современной компьютерной безопасности. Шифрование может быть использова­но для подтверждения идентификационных данных пользователя или компьютера, для проверки допустимости данных или для сокрытия со­держимого данных при хранении или в коммуникационном потоке.

Безопасность Windows 2000 основывается на аутентификации пользователей. Входя в систему Windows 2000, пользователи подтверждают свою личность для того, чтобы получить доступ к файлам, программам и общим данным на серверах. Windows 2000 использует проникаю­щую модель безопасности, в которой идентификационные данные пользователя проверяются при всех действиях, выполняемых пользо­вателем на компьютере, вместо того чтобы предоставлять широкий доступ к компьютеру после того, как произошел успешный вход в систему.

Для того чтобы операционная система была надежной, она должна быть способной гарантировать, что не подвергалась несанкциониро­ванным изменениям и что информация может храниться в безопасно­сти от пользователей. Windows 2000 использует разрешения файловой системы NTFS для управления доступом к файлам, включая файлы, обеспечивающие загрузку Windows 2000. Разрешения могут быть пре­доставлены пользователям и группам пользователей для каждой функ­ции файловой системы. Файлы также могут быть зашифрованы на диске для гарантии того, что к ним не будет получен доступ, даже когда компьютер выключен.

Сетевая безопасность Windows 2000 управляется при помощи Active Directory, используемой в качестве репозитария хэшированных паро­лей Kerberos, групповых политик и политик IPSec. Active Directory определяет также взаимоотношения между принципалами безопас­ности.

Windows 2000 использует Kerberos для проверки идентификационных данных пользователя по сети. Kerberos является надежной системой безопасности третьей фирмы. Поскольку обе конечные точки во вза­имодействии доверяют и доверяемы сервером Kerberos, они доверяют друг другу. Серверы Kerberos могут доверять другим серверам Kerberos, поэтому могут быть созданы транзитивные доверительные отношения, дающие возможность конечным точкам из разделенных большим рас­стоянием сетей устанавливать сеансы взаимодействия с проверкой подлинности. Kerberos интегрирован с Active Directory (все контрол­леры домена являются центрами Kerberos Key Distribution Center (центрами распределения ключей Kerberos)), и вхождение в одно дере­во домена автоматически создает транзитивные двусторонние довери­тельные отношения.

Групповые политики применяются для установки требований безопас­ности и конфигурации компьютеров и учетных записей пользователей в домене, офисе или контейнере OU. Можно применять групповые политики для управления практически всеми элементами безопасно­сти компьютеров и пользователей. Групповые политики управляются из оснастки Active Directory Users and Computers (Пользователи и ком­пьютеры) или через оснастку Active Directory Sites and Services (Сайты И службы).

IPSec является стандартом Интернета для обеспечения аутентично­сти IP-пакетов и для шифрования данных, вложенных в IP-пакеты. IPSec работает со многими различными алгоритмами безопасности и может работать в обычном транспортном режиме или туннельном режиме для эмуляции закрытого канала в открытой сети, такой как Интернет.

Безопасность в эру Интернета означает активную блокировку сеансов от неизвестных компьютеров, авторизацию пользователей на основе сертификатов публичных ключей шифрования, аудита использования файлов и каталогов, шифрование передачи данных и предотвращение непреднамеренной активизации вирусов и троянских коней легитимными пользователями.

Вынеся уроки из плохо подготовленной Windows NT4, Windows 2000 предоставляет сложный набор средств аутентификации пользовате­лей, шифрования данных, обеспечения безопасных соединений, бло­кировки несанкционированного доступа и целостного управления безопасностью. При помощи набора служб по умолчанию Windows 2000 можно сделать более безопасной, чем любую другую операционную систему для массового рынка — в том числе все версии UNIX или Linux, — и ею гораздо проще управлять и использовать в безопасном состоянии.

Windows 2000 не может, тем не менее, предусмотреть все, потому что Microsoft и поставщики программного обеспечения третьих фирм пока еще во главу угла ставят простоту использования, а не безопасность в потребительских продуктах, таких как Internet Explorer, Outlook и Office. Во всех этих программах существуют серьезные изъяны в без­опасности из-за их встроенных сценарных процессоров, требующих от администраторов сетей неустанной бдительности. Windows 2000 так­же может помочь в исправлении этих проблем, но пока Microsoft в сво­их продуктах для конечных пользователей не станет уделять основное внимание безопасности, единственным способом предотвратить про­блемы безопасности в вашей сети, вызванные этими программами, —это вообще их не использовать.

 


Список литературы:

5. В. Олифер Н. Олифер. Сетевые операционные системы – С. Петербург.: Питер., - 2003.

6. Марк Джозеф Эдвард, Дэвид Лебланк. Где NT хранит пароли. - Журнал "Windows 2000 Magazine", -02/1999

7. Мэтью Штребе. Windows 2000: проблемы и решения. Специальный справочник – С.Петербург.: Питер., -2002.

8. Андреев А. Г. и др. Microsoft Windows 2000: Server и Professional. Русские версии. – BHV, -2001.

9. Грег Тодд. Windows 2000 Datacenter Server //по материалам сайта http: www.citforum.ru

10. Криста Андерсон. Администрирование дисков в Windows 2000.-Журнал "Windows 2000 Magazine", -03/2000 //по материалам сайта http: www.citforum.ru

11. Джеффри Р. Шапиро. Windows 2000 Server. Библия пользователя – Вильямс, - 2001.

12. Гарри М. Брелсфорд. Секреты Windows 2000 Server – Вильямс, -2000.

13. Гусева. Сети и межсетевые коммуникации. Windows 2000 - Диалог Мифи, - 2002.


Приложение А

Исходный текст программы

.386

.model flat, stdcall

option casemap:none

 

include /masm32/include/windows.inc

include /masm32/include/user32.inc

include /masm32/include/kernel32.inc

include /masm32/include/wsock32.inc

include /masm32/include/gdi32.inc

includelib /masm32/lib/wsock32.lib

includelib /masm32/lib/user32.lib

includelib /masm32/lib/kernel32.lib

includelib /masm32/lib/gdi32.lib

 

WndProc PROTO:DWORD,:DWORD,:DWORD,:DWORD

 

.data

dlgname db "WINSOCK",0

szTitle db "Ip Dialog",0

wsaError db "Error initializing winsock!",13,10

szName db "Computer Name: %s",0

szFont db "MS Sans Serif",0

 

.data?

wsa WSADATA <?>

hStatic dd?

hFont  dd?

hInstance dd?

buffer db 24 dup (?)

buffer2 db 128 dup (?)

   

.code

 

start:

 

   invoke GetModuleHandle, NULL

   mov hInstance, eax

   invoke WSAStartup,101h,addr wsa

      .if eax == NULL

           invoke DialogBoxParam,hInstance,ADDR dlgname,0,ADDR WndProc,0

           invoke ExitProcess,0

      .endif

           invoke MessageBox,NULL,offset wsaError,offset szTitle,MB_OK + MB_ICONSTOP

               invoke ExitProcess,1

                   

WndProc proc hWin:DWORD,uMsg:DWORD,wParam:DWORD,lParam:DWORD

.if uMsg == WM_INITDIALOG

       invoke LoadIcon,hInstance,101

           invoke SendMessage,hWin,WM_SETICON,TRUE,eax

       invoke GetDlgItem,hWin,2000

           mov hStatic,eax

       invoke gethostname,offset buffer,sizeof buffer

           invoke wsprintf,addr buffer2,addr szName,addr buffer

               invoke SetDlgItemText,hWin,3000,addr buffer2

       invoke gethostbyname,addr buffer

           mov eax,[eax+12]                                       

           mov eax,[eax]

           mov eax,[eax]

               invoke inet_ntoa,eax

                    invoke SetDlgItemText,hWin,2000,eax

                         invoke WSACleanup

                           xor eax,eax

                               ret      

.elseif uMsg == WM_CTLCOLORSTATIC

   mov eax,lParam

  .if eax == hStatic

       invoke CreateFont,16,16,0,0,400,0,0,0,OEM_CHARSET,\

                       OUT_TT_PRECIS,CLIP_DEFAULT_PRECIS,\

                       DEFAULT_QUALITY,DEFAULT_PITCH or FF_SWISS,\

                       ADDR szFont

           mov hFont,eax

       invoke SelectObject, wParam, hFont

       invoke GetSysColor, COLOR_MENU

       invoke SetBkColor, wParam, eax

       invoke SetTextColor,wParam,Blue

       invoke GetStockObject, HOLLOW_BRUSH

            ret

  .endif

.elseif uMsg == WM_CLOSE

       invoke DeleteObject,hFont

       invoke EndDialog,hWin,0 

       xor eax,eax

       ret

.endif

xor eax,eax

ret

   

WndProc endp

end start

 


Приложение Б

Файл сборки

Makefile

 

 

NAME=ip

$(NAME).exe: $(NAME).obj $(NAME).res

   \masm32\bin\Link /SUBSYSTEM:WINDOWS /LIBPATH:\masm32\lib $(NAME).obj $(NAME).res

$(NAME).res: $(NAME).rc

   \masm32\bin\rc $(NAME).rc

$(NAME).obj: $(NAME).asm

   \masm32\bin\ml /c /coff /Cp $(NAME).asm


Приложение В

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...