Введение в различные типы атак

C ++ позволяет перегружать операторы >> и <<. std::stringstream является производной от std::istream и наследует перегрузки операторов >> из std::istream.

std::istream имеет множество перегрузок для многих распространенных типов. Вы можете найти их список здесь .

Типичная перегрузка оператора std::istream >> выглядит следующим образом:

std::istream& operator>>(std::istream& stream, YourType& var) {
    /* 
    ** code here to parse and read a 'YourType' into 'var'
    */
    /* var is set */
    return stream; /* return the same stream to allow chaining */
}

Когда вы делаете some_stream >> YourType_object, вызывается соответствующая перегрузка оператора >>. В вышеупомянутом случае наша перегрузка оператора вызывается с параметром stream, принимающим some_stream, и var, принимающим YourType_object.

Перегрузки >> (и перегрузки << тоже) интеллектуально возвращают поток, которым они управляли; тем самым, позволяя объединить ряд операторов >>.

29
задан DuduAlul 17 August 2010 в 06:34
поделиться

10 ответов

Объясните связь модели DOM с каждая из следующих технологий: HTML, CSS, JavaScript.

Цель здесь состоит в том, чтобы дать понять, что студент понимает, что HTML генерирует структуру DOM, CSS влияет на то, как эта структура отображается, а JavaScript влияет на то, как эта структура изменяется. Если вы понимаете, как все это связано с DOM, все кодирование на стороне клиента становится простым.

21
ответ дан 28 November 2019 в 01:40
поделиться

Забавный вопрос :-) Как насчет ...

При веб-разработке вам необходимо разделить контент, стиль и поведение. Опишите, почему это делается и какие технологии вы используете на каком слое. Каждая аббревиатура должна быть написана в полном тексте при первом использовании . (10 стр)

или ...

Опишите, что происходит в веб-браузере (шаг за шагом), когда веб-страница передается в Интернете с веб-сервера по протоколу передачи гипертекста клиенту. Рассмотрим все различные технологии, которые вы использовали в этом курсе. (10 р)

11
ответ дан Marcel Korpel 28 November 2019 в 01:40
поделиться

Вы можете попросить объяснить, как реализовать шаблон MVC. И в этом паттерне MVC каждая технология используется. Скорее как и почему?

2
ответ дан YoK 28 November 2019 в 01:40
поделиться

Ну, на мгновение надев мою «злую» шляпу, вы могли бы спросить, как внутренняя модель данных должна диктовать макет внешнего интерфейса, и любой ответ, кроме некоторого варианта «Это не так», доходит до возьми класс снова >: -)

1
ответ дан mezmo 28 November 2019 в 01:40
поделиться

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

Уточненный вопрос. Я всегда нахожу своих студентов более заинтересованными, когда помещаю их в середину сюжета.

1
ответ дан Frankie 28 November 2019 в 01:40
поделиться

попросить разработать систему базы данных ученика, в которой пользователь может искать в базе данных дату рождения.

здесь следующие технологии могут быть использованы и проверены.

1. HTML для элементов управления формой

2. CSS для эстетики

3. Javascript для проверки даты

4. очень важно объяснить SQL-инъекцию.

5. JSP

6. СЕРВЛЕТЫ

7. JDBC

8. ЛЮБАЯ база данных

9. AJAX

10. Может использоваться шаблон проектирования MVC .

1
ответ дан Balaswamy Vaddeman 28 November 2019 в 01:40
поделиться

Объясните, что происходит и какие технологии можно использовать, когда пользователь входит на защищенный веб-сайт, используя логин на основе формы, который устанавливает HTTP cookie. (Начиная с HTML-формы до базы данных и обратно в браузер.) Дополнительный вопрос: что меняется при использовании AJAX для входа в систему?

Ответ (основные моменты):

  • HTML: Форма (с использованием POST ) с полями ввода текста и кнопкой. Безопасность: форма отправляется через HTTPS. Сама страница входа также должна быть страницей HTTPS (в противном случае форму можно было бы заменить на mallory -> MITM)

  • Javascript: выполняет некоторую базовую проверку (например, пустой пароль) и отображает сообщение об ошибке перед отправкой на сервер.

  • Сервлет: принимает запрос POST, принимает параметры имени пользователя и пароля (в виде открытого текста), вычисляет (соленый) хеш из пароля, отбрасывает пароль в виде открытого текста.

  • JDBC: Выбирает хешированный пароль из БД. Используется для сравнения с переданным паролем.

  • Сервлет: в случае успеха создает новый сеанс (приводит к созданию заголовка cookie). Подготавливает объекты, которые будут использоваться на странице JSP (и сохраняет их в области сеанса или запроса).

  • JSP: подготавливает HTML-страницу, которая будет отправлена ​​в браузер.

  • Браузер: получает ответ HTTP, устанавливает cookie и отображает страницу.

Бонус (AJAX): серверу не нужно готовить всю страницу, а только отправляет клиенту необходимые данные и / или фрагменты HTML. Браузер не перезагружает всю страницу, а изменяет текущую страницу с помощью JavaScript. Безопасность: AJAX не может выполнять межсайтовые запросы, поэтому невозможно, чтобы HTTP-страница отправляла данные для входа через HTTPS.

Предостережение

Следует отметить, что это не предназначено для использования в качестве HOWTO для создания механизма безопасного входа в систему. Это описание упрощено и не охватывает все аспекты безопасности. OTOH, как вопрос экзамена, вероятно, следует упростить и адаптировать к содержанию учебной программы.

6
ответ дан 28 November 2019 в 01:40
поделиться

Почему любой фреймворк, который вы используете, должен генерировать HTML, CSS и JS?

DRY

1
ответ дан 28 November 2019 в 01:40
поделиться

Что-то вроде ...

Объясните, как вы будет отображать результаты вызова внешнего XML-канала, когда пользователь выполняет какое-либо действие в браузере. Браузер не должен перемещаться.

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

1
ответ дан 28 November 2019 в 01:40
поделиться

Поскольку студенты уже разработали упрощенный твиттер во время курса, вы можете задать вопрос, какие дополнительные шаги они сделают, чтобы сделать настоящий сайт твиттера или его клон, и попросить описать каждый шаг от html до ORM / базы данных. Вы можете явно указать технологии, которые должны быть использованы.

2
ответ дан 28 November 2019 в 01:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: