Программное обеспечение безопасности: В стадии разработки анализа
Комплексный дизайн обеспечивает решения проблемы рассмотрены продукта, а также принимает во внимание последствия нововведения. Безопасность заявка также создал и повышать путем комплексного проекта. После организации отбрасывает идею безопасности, как функцию, становится очевидным, что безопасность rity требует рассмотрения начале. Хотя каждая организация может иметь различные методы проектирования продукта или применения следующего подхода целесообразно для обеспечения высокого уровня безопасности в конструкции. На этапе проектирования анализируется с трех точек зрения:
В глобальной точки зрения является высшим зрения системы; Она определяет потребности рассмотрены заявки и его набор функций. В организационной точки зрения освещаются отдельные компоненты, входящие в состав заявки. Компонент точки зрения выходит на следующий уровень детализации, посредством изучения четких деталей каждого компонента и его осуществления. В поэтапный подход используется здесь позволяет более глубокого и всестороннего анализа более, что также дает легко понять потока. Это помогает руководителям и разработчикам поставить в надлежащие процедуры для обеспечения рассмотрения безопасности при их применении. В глобальной точки зренияМногие приложения обусловлены неудовлетворенной потребность или неадекватности нынешних решений. Хороший дизайн выделяет следующие безопасности: · Вопросы безопасности, связанные с существующих решений проблемы или необходимость решается · Применение в связи с этим вопросы безопасности · Возможность уязвимостях в безопасности, которые существуют в нововведений время Глобальный анализ предоставляет информацию, что злоумышленник бы найти после применения освобождения. На этом этапе, безопасности, архитектуры должны быть определены для применения. Эта архитектура оформляет уровня безопасности необходимо в заявке. Она помогает создать приложения сферы безопасности путем выявления взаимосвязи применения его окружение и уровень безопасности, предоставленных ими. А архитектуры безопасности также подчеркивается необходимость, и объем, независимый безопасности, что заявка должны предоставить, а также функции требуется. Глобальный анализ и создание системы безопасности осуществляется с помощью дополнительных категорий модулей, компонентов, интерфейсов и методов, используемых в процессе применения. Их место и взаимосвязь друг с другом и их воздействия внешних приложений, пользователей и интерфейсов важных моментов. В глобальной точки зрения заявка первоначально представлены хорошо "черный ящик" - только детали известны те видели со стороны. Эти внешние особенности и функциональные требования затем разделяется на модули для анализа безопасности. Поиск поставщиков информации, новостей, списки рассылки, и интерактивные форумы для раскрыта уязвимость в конкурирующие или аналогичных приложений - хороший способ узнать о некоторых важных вопросов безопасности, связанных с применением. Она также помогает отметить неэффективность решений уязвимости найдены в аналогичных приложений. Исследование, Фаза IЭто гипотетический пример - исследования по развитию Интернета торговли применения. Эта служба позволяет пользователям подключаться из своих браузеров сделать покупки онлайн. Первый уровень в разработке этого приложения является определение своих возможностей, независимо от осуществления методы. Эти характеристики могут включать: · Выбор соответствующей операционной системы для проведения прикладных · Database доступа для хранения личной и общественной информации · Web выступающей · Связь этих частей, используя пользовательские развитых заявок · Связь с финансовыми институтами по сделкам С глобальной точки зрения дизайнера discerns безопасности особенностей, необходимых для каждого компонента этих функций. База данных хранит личную информацию от многих различных пользователей, включая пароли, номера кредитных карт, а также контактную информацию. В целях защиты этой информации, база данных должна обеспечить безопасность компонентов, которые поддерживают ограничения для объектов и, возможно, их шифрование. Веб сервер должен поддерживать надежной связи с Secure Sockets Layer (SSL) протокол, а некоторые методы взаимодействия с внешними приложения и базы данных. Это может быть помощью Java сервлетов и апплетов, CGI или программ. Сети связи являются неотъемлемой частью этой системы. Веб сервер и сервер баз данных, программного обеспечения возможно использовать отдельные машины и, следовательно, средства обеспечения сетевой связи между ними не требуется. Последний компонент будет рассмотрен вопрос о фактической связи с организацией, что санкционирует сделки. Это может быть банк или кредитная карточка компании, что санкционирует расходы пользователей. Соединения могут добиться с модемом или другой фигурой, телекоммуникационного оборудования, что взаимодействует с финансовой организацией и выполняет проверку. Эти соединения требуют высокого уровня безопасности во избежание несанкционированного доступа пользователей. Эти мнения имеют почерпнуть из знаний о местах, анализ конкурирующих продуктов, и знакомство с требованиями заказчика. На данный момент, заботливый исследования необходимо сделать, чтобы документ, прошлых и нынешних уязвимостях в продукции. В результате список следует определить области риска, которые нуждаются в решении. Функции защиты отсутствует первоначальный список требований зачастую определяются на основе этого анализа, другой ее благ. В нашем Интернет коммерции, например, исследователи обнаружили следующие уязвимости в сопоставимых продуктов: · Базы данных не имеет защиты, в результате воздействия на частных клиентов информацию. · Веб сервера дыры, которая позволяет выполнить произвольный код в системе. Сервер в конфигурации по умолчанию позволяет также каталог труда преодолевать, что позволяет внешним пользователям доступ ко многим частным файлов и каталогов в системе. · В CGI приложений, используемых для связи с базой данных уязвимостей, которые были позволяет удаленному атакующему выдавать себя другим клиентам. Исследование также показывает, что защита данных, буфера, конфигурацию по умолчанию, а также материалы проверки вопросов необходимо избегать потому, что эти уязвимости место часто с аналогичных приложений. Он также показал, что продавцами были добавлены элементы безопасности и патчи, которые будут защищать от этих проблем. Это делает аутентификации и контроля доступа важных требований, а также сетевой безопасности. На этом этапе дизайнер знает уязвимости, связанные с применением, методы, с помощью которых другие организации реагировать на них, и ряд важных функций безопасности, которые составляют основу безопасности архитектуры. В архитектуре безопасности развивает на следующем этапе проектирования. В организационной точки зренияБезопасность - это не точная наука; Ее потребности являются специфическими для каждой заявки и окружающей среды. Поэтому не достаточно взглянуть на безопасность только режим просмотра. Хотя в остальном хорошо продуманной заявки может существовать независимо от всех других приложений в системе, взаимодействия всех компонентов в том, что приложение может создавать угрозы безопасности. В организационной точки зрения идентифицирует отдельных элементов или групп элементов, которые формируют весь применения, их функции, и их взаимоотношений друг с другом. Элемент может быть функция, класс, и этот процесс, или набор этих элементов, которые сгруппированы по их отношения к применению. Заявка, как правило, из нескольких функциональных модулей, таких, как пользовательский интерфейс, сети и коммуникации компонентов или данных, хранения и поиска средств. Хотя модуль может показаться достаточно безопасной, его взаимосвязи с другими компонентами могут быть казнен небезопасное. Аналогичные к анализу взаимодействия с заявкой организационном уровне анализа принимает функциональных требований и определяет архитектура используется. Функциональные требования позволяют проектировщикам определить набор компонентов и методов, которые обеспечивают функциональность; Анализ безопасности между ними, как они взаимодействуют получается надежным выбором для включения в заявки. Дополнительные идентификации, организации и классификации каждого компонента в применении продолжает на этом этапе. Логическим место для начала - и, в частности, подозреваемого в плане безопасности - это краям модуля. Кромки въезда или выезда, где данные пересекает границы между модулями. Например, данные пересекает границы между модулями ходе этих функций: · Передача данных в качестве параметров · Установка глобальных переменных · Махинации общей памяти · Запись данных в файлы · Передача данных через канал связи, таких, как сеть · Получение вводимого пользователем Исследование, Фаза IIВ организационном этапе проектирования выборки Интернет коммерции применения, каждый компонент приложения - на веб-сервер, сервер баз данных и соответствующих приложений, классифицируется в своих функциональных модуля для дальнейшего анализа. База данных сервер хранения компонент, авторизации и контроля доступа компонент, и коммуникации. Веб сервер в Интернете, выступающая компонентом, внешний модель программирования и обеспечения связи клиента и обеспечения связи базы данных компонентов. Взаимодействие между этими компонентами являются определению пути, с нескольких точек, где безопасность должна быть сильной. После взаимодействия между Web сервером и клиентом, клиент веб-браузер передает конфиденциальных данных на Web сервер. Эти данные затем передаются в пользовательскую программу, взаимодействует с базой данных и финансового учреждения. После данных путь применения, разработчик может наблюдать моменты уязвимости клиенту сообщения, веб-сервер применения взаимодействия, в связи с Web сервер для базы данных, и взаимодействия между ними. В требования безопасности начинают принимать форму. В заявке должны решать эти области риска и обеспечения безопасности в этих формах: · Обеспечение коммуникации с клиентом Интернет-браузер в виде кодированных сети связи, аутентификации пользователей, управления доступом и механизмов по их информации. · безопасного взаимодействия между веб-браузером и электронной торговли, применение для обеспечения безопасности системы · Применение целостности коммерческой программы · надежные средства связи с базой данных · Безопасность объектов базы данных Исходя из этих требований, архитектуры, начинает обретать форму. Применение SSL на Web сервер защищает сервера для браузера сообщений. Заявка будет иметь свой собственный механизм аутентификации, которая позволяет клиентам входить в безопасности. Проверка данных и механизмов защиты будет также осуществляться в организованном порядке, что использует только минимально необходимые привилегии функционировать. Функциональность будет включен в заявку на объект защиты и шифрования данных на сервере. Фактические детали реализации будут разработаны в окончательном компонент этапа. Соответствующие методы безопасности окажутся на поверхности, когда следующие вопросы задают на организационной стадии: · Как мы защищаем информацию прошло? · Какие последствия если один модуль передает ложные данные в другую? · имеющими ограничения данных определяется? · Есть ли предпочтительный метод передачи данных, что может быть увеличение безопасности? · Какие компонентов, приложений и пользователям необходим доступ к данным? Какого рода доступ требуется - только для чтения или как читать и писать возможностей? Компонент точки зренияОкончательные точки зрения конструкции, из которых происходит анализа является вскрытие из отдельных компонентов приложения. Наименьшая дизайн и детали реализации могут вводить и скрывать очевидные проблемы безопасности, которые трудно найти после освобождения. Плохо осуществление может также подорвать усилия положить в безопасности конструкции. Некоторые из мер предложил здесь делятся на то, что считается хорошей практикой кодирования и не обязательно безопасности конкретные, но они оказывают влияние на безопасность заявки. В архитектуре безопасности, которые определяются на заявку будет мандат, чтобы ряд сдержек и противовесов, в которой заявка должна соответствовать. Эти сдержек и обеспечит высокую степень гарантии, что заявка действует в одинаковым способом и в случае неожиданных данных или информации. Компонент мнение изучает каждую часть, которая входит модуль. (модули, в свою очередь, форма заявки.) Эти компоненты следует анализировать их индивидуальные элементы безопасности и взаимодействие с другими компонентами в этом модуле. Начиная моменты при изучении программных вопросов в рамках модуля · Возвращаемые значения · Внеочередные и предпосылки Данные проверки · Выявленные реагирования и восстановления · Разрешения и честь Возврат значения показателей успеха или неудачи в функцию. Составляющие индивидуальной модуля изготовлены из функций, взаимодействовать, и установили отношения, что позволяет программе выполнять надлежащим образом. Разработчики также должны понять, что это значит, если какая-то функция не удалось, и должны реагировать на эту неудачу. Полное понимание этих отношений позволяет разработчику понять зависимость между функциями. Исходя из этих зависимостей, компонентов модуля может быть организована для повышения надежности и безопасности. Данные динамики в любое применение - он перемещается между функциями и модулями, а также отдельных приложений, изменяя исполнения первоначальной заявки, как это можно сделать. При идентификации модулей, которые формируют заявку, и компоненты, которые впоследствии образуют те модули, путь данных путем применения целого можно проследить. В въезда между модули и функции центральной элементов, которые влияют на успех или неудача применения, поэтому проверка данных на эти моменты важно. Рабочая рука об руку с одобрения - это определенный ответ на недействительных данных и аномальные условия. Многие приложения не могут выработать механизм в случае непредвиденных событий; Это часто приводит к нестабильной приложений, которые катастрофы в ближайшее подписать несовершенных данных. Знание их и привилегий, необходимых для функционирования компонентов, содержит важные сведения по применению дизайнеров. После модель мере привилегия хороший дизайн практике; Она рекомендует изоляции и ограничения привилегий в текущих применения. В большинстве случаев высокий уровень привилегии нужны очень редко и только в единичных случаях. Многие приложения, которые требуют повышенных привилегий для небольшая часть функций взять весь применения этой привилегией высшего уровня для всего своего существования. Это создает опасные условия, когда каждая уязвимость, которая находится существует в этом привилегированном режиме. Привилегий относится главным образом несколько уровней полномочий по операционной системе. На каждом высокий уровень привилегий, зарегистрированные пользователи имеют доступ к более ресурсов в системе, таких, как память, других приложений, устройств и данных. Коренной пользователь в UNIX, администратор, и СИСТЕМА специальный счет в Windows свидетельствуют о высоком уровне привилегий. Есть часто различные степени доступа, которые обеспечивают гранулированный контроль доступа, также. Гранулированного контроля доступа позволяет определению доступа и неприятия методов применения. Файлы, сети, пользователей, и объекты могут быть связаны с набором четких разрешений, что заблокировать или разблокировать доступ к ним. Исследование, этап IIIКомпонент этапа анализа нашей торговли по Интернету заявки рассматриваются отдельные компоненты, используемые в применении и безопасность. Ввод данном этапе дизайнеры должны иметь чувство полного пути данных и взаимосвязей между модулями. Следующий шаг гранулированных создает основу для применения реализации. Целями этого анализа для определения привилегий различных компонентов, чувство организация, которая будет использоваться в ходе реализации, и знания о том, как этот процесс будет происходить. Здесь заранее определенных требований воплотить в конкретные методы осуществления. Дизайнеров выбрать Web сервера и сервера базы данных на данный момент, исходя из установленных требований. В нашем например, Apache Web сервер был выбран потому, что это можно сделать для поддержки связи SSL и имеет хорошо документированный метод взаимодействия с внешних приложений. В Oracle сервер базы данных был выбран потому, что она обеспечивает гибкость, масштабируемость, безопасность и требуется в базе данных, а также потому, что он поддерживает Java на основе взаимодействия. Java была выбрана в качестве языка и продление осуществления фактической Интернет коммерции программного обеспечения, поскольку она работает с Web и серверов баз данных и поддерживает сильного, конфигурируемый модели безопасности. Веб сервер и сервер баз данных, которые затем разработана определения наиболее безопасных методов следующие компоненты: · Сервер конфигурации по умолчанию · Безопасности конфигурации исходной операционной системы · Привилегии, необходимые для взаимодействия с Java приложений · Контроль доступа компонентов В торговле программного обеспечения организован с целью предоставить эти компоненты: · привилегий требования выполнять свои функции · Веб сервер взаимодействия и коммуникации въезда · Аутентификация пользователя и методы контроля доступа · сессия безопасности методов предотвращения заимствования пользователей · В базе данных сервера взаимодействия и коммуникации въезда На основе этого анализа и организации выясняется, что только часть системы, что требует повышенных привилегий операционной системы является применение торговли. Необходимо также внутренний набор привилегий уровнях для обеспечения доступа пользователей и аутентификации. По умолчанию настройки позволяют только функциональность, необходимые для функционирования системы, и каждая операционная система безопасности закаленной с такой же минималистский подход. В торговле заявка, где большинство компонентов безопасности существуют. Он несет ответственность за проверку пользователя, с разрешениями на объектах базы данных, отслеживание каждого пользователя сессии, и с фактической разведки, необходимых для поддержания функционирования системы. В торговле применения потребностей повышенными привилегиями только тогда, когда контроль Интернет и сервера баз данных запуска и остановки. Самый защищенный метод для выполнения этих действий определяется для отдельного контроллера, что процесс увеличения своих привилегий в то время она выполняет запуска или остановки действия; Затем она откажется от своих привилегий, до следующего запроса. Контроллер процесса связывается только с торговли, применение и использование аутентификации сообщений начать запуска или отключение системы. В торговле заявка также шифровать личную информацию до сохраненных в базе данных, в целях защиты пользователя и финансовой информации. В случае аномального и ошибок, такие как неверный ввод данных, аутентификации пользователя неудачи, и не коммуникации, требует разработки системы отчетности, которые могут войти эту информацию и реагировать на события. Система реализации возрастает, естественно, от постоянного анализа, представленным в предыдущем глобальном, организационных и компонент анализа этапов. Разработчики используют руководства и процедуры, чтобы помочь им написать код, который сохраняет высокий стандарт безопасности создана. это статья добавлена Тамаш Querolin
|
|||
|