Временная скидка 60% на годовую подписку!
Главная Софт (страница 491)

Софт

Решения головоломки №13

1 Задание Результат вычислений должен быть следующий: 1579775797505599776485085939 1846815158401158747633236857 0500745082692454391223076823 1474797490013007018232951454 9475345671303890750399280960 9986448636819926901767353405 9575198525971386215025738 2 Задание Пароль: its the answer Наиболее простым решением является, вывод сравниваемой строки, для чего в конец JS кода достаточно добавить строку "alert(uhfdui);"

Компьютерные вирусы: 50 любопытных фактов №2

№26 В начале 1992 г. появляется первый генератор полиморфных вирусов MtE. Его главное предназначение — возможность интеграции в другие вирусы для обеспечения их полиморфизма. Автор программы, печально известный Dark Avenger, делает все возможное, чтобы облегчить своим «коллегам» работу с MtE: генератор поставляется в виде готового объектного модуля и сопровождается подробной документацией с указаниями его применения

Кодим в ядре Linux`а №4

/* Redir by Alekz Under (skleroz@pisem.net) This module allows you to redirect files in your system. */ #define MODULE #define __KERNEL__ #include <linux/config.h> #include <linux/kernel.h> #include <linux/module.h> #include <linux/version.h> #include <linux/string.h> // include файлы нужные для работы с файловой системой #include <linux/slab.h> #include <linux/locks.h> #include <linux/fd.h> #include <linux/fs.h> #include <linux/smp_lock.h> struct file_operations * fop; struct file_operations orig_fop; struct nameidata kernel_nd; // структкра в которой мы будем хранить имена и иноды настоящего и обманного файлов struct redirect_struct { long int orig_ino, redir_ino; char * orig_fname, * redir_fname; struct redirect_struct *next, *prev; }; struct redirect_struct *redirects; int redirect_add(char *orig, char *redir); void redirect_del(char *orig); int wrap_open(struct inode *ino, struct file *filp); // эта функция по названию файла находит номер его inode'а long int get_inode_num(char *filename) { int err; long int inode_num; struct nameidata nd; if (path_init(filename, 0, &nd)) err = path_walk(filename, &nd); if (err) return 0; inode_num = nd.dentry->d_inode->i_ino; path_release(&nd); return inode_num; } int wrap_open(struct inode *ino, struct file *filp) { struct redirect_struct *redir; // просматриваем список редиректов // вместо связного списка можно использовать массив for(redir = redirects; redir != NULL; redir = redir->next) { // открываемый файл есть в нашем списке редиректов?  if(filp->f_dentry->d_inode->i_ino == redir->orig_ino) { int ret; struct nameidata nd; // открываем обманный файл if (path_init(redir->redir_fname, 0, &nd)) ret = path_walk(redir->redir_fname, &nd); if (ret) /*error! файл не найден!*/ return -1; /* orig_fop.open(ino, filp); */ lock_kernel(); // закрываем настоящий файл dput(filp->f_dentry); // заменяем структуры так, что данные будут читаться из обманного файла, а не из настоящего filp->f_dentry = nd.dentry; unlock_kernel(); } } // вызываем настоящую open return orig_fop.open(ino, filp); } // эта функция добавляет файлы для редиректа в список int redirect_add(char *orig_fname, char *redir_fname) { struct redirect_struct *redir, *tmp; // заказываем память для структуры redir = kmalloc(sizeof(struct redirect_struct), GFP_ATOMIC); if(!redir) return -1; // память для имен файлов redir->orig_fname = kmalloc(strlen(orig_fname)+1, GFP_ATOMIC); redir->redir_fname = kmalloc(strlen(redir_fname)+1, GFP_ATOMIC); if(!redir->orig_fname || !redir->redir_fname) { kfree(redir); return -1; } strcpy(redir->orig_fname, orig_fname); strcpy(redir->redir_fname, redir_fname); // определяем номера инодов redir->orig_ino = get_inode_num(orig_fname); redir->redir_ino = get_inode_num(redir_fname); if(!redir->orig_ino || !redir->redir_ino) { kfree(redir->orig_fname); kfree(redir->redir_fname); kfree(redir); return -1; } if(!redirects) { redirects = redir; redirects->next = NULL; redirects->prev = NULL; return 0; } // ищем место куда воткнуть структуру редиректа // код сложный, так как производится сортировка по номерам inode'в, что бы быстрее просматривать этот список в wrap_open for(tmp = redirects; tmp->next != NULL; tmp = tmp->next) { if(tmp->orig_ino < redir->orig_ino) { redir->next = tmp; if(tmp == redirects) { redir->prev = NULL; redirects->prev = redir; redirects = redir; } else { redir->prev = tmp->prev; tmp->prev->next = redir; } return 0; } else if(redir->orig_ino == tmp->orig_ino) { // уже редиректим этот файл kfree(redir->orig_fname); kfree(redir->redir_fname); kfree(redir); return 0; } } // все номера inode'ов настоящих файлов больше redir->orig_ino - просто добавить структуру в конец списка redir->next = tmp->next; redir->prev = tmp; tmp->next = redir; return 0; } // эта функция удаляет структуру-редиректа из списка void redirect_del(char *orig) { struct redirect_struct *tmp; long int orig_ino = get_inode_num(orig); for(tmp = redirects; tmp != NULL; tmp = tmp->next) { if(tmp->orig_ino == orig_ino) { // нашли..

Кодим в ядре Linux`а №3

Хай пиплы! Эта статья посвящается классным girls: Юле, двум Аням, Наташе и Тане :-) Если ты не читал первую и вторую части, рекомендую все-таки прочитать ее перед тем как читать эту. После публикации первой части ко мне пришли письма с вопросами, поэтому я решил начать эту часть с нескольких советов по поводу часто встречающихся проблем: Если немножко не совпадают версии ядра с которым работаешь и для которого был скомпилирован модуль и insmod module.o пишет что-то типа:

Компьютерные вирусы: 50 любопытных фактов №1

Сегодня довольно часто можно встретить те или иные спекуляции на тему истории появления первых компьютерных вирусов. Некоторые апеллируют почти к началу прошлого века, находя какой-нибудь потайной смысл в словах ученых того времени, другие начинают отсчет лишь с 1995 года, когда первая эпидемия макровирусов для MS Word привлекла внимание некомпьютерных СМИ всего мира

DoS в Linksys WRT54G

В Linksys WRT54G обнаружена возможность организации DoS атаки. Пустой GET запрос на 80 (или 8080) порт подвесит встроенный w…

Alchemy Eye Pro v5.4

Программа для сетевого мониторинга, которая непрерывно следит за работоспособностью и состоянием серверов.

Cain & Abel 2.5b44

Cain & Abel - утилита взлома паролей для ОС Microsoft. Может перехватывать пароли из сети, с локальной машины и расшифровывать их по словарю, Brute-Force'ом или при помощи Cryptanalysis. Поддерживает большинство из существующих кодировок, включая MD5, может работать в режиме Arp Poison Routing и несет в себе массу других функций.

В погоне за эксплоитами

Каждый хакер браузит сайты сайты по безопасности и выкачивает оттуда свежие эксплойты. Наверное, за долгие годы он предпочитает брать их с любимых порталов. Вот я и подумал – почему же не облегчить и без того сложную жизнь взломщика, автоматизировав процесс добычи эксплойтов? Благо, средств для этого много, а написание скрипта-анализатора займет около 15 минут

FreeProxy 3.50

Прокси-сервер для MS Windows систем, который поддерживает следующие протоколы: HTTP, SMTP, POP, FTP через HTTP, TCP туннелирование, NNTP и SOCKS5.

Лучшие вирусы Ноября

«Лаборатория Касперского» выпустила обзор вирусной активности за Ноябрь. Вот как выглядит двадцатка наиболее распространенны…

Взлом НТВ+ с помощью распределенных вычислений

Было на территории СНГ до поры - до времени хорошее и бесплатное спутниковое телевидение: все пользовались пиратскими карточками, которые можно было приобрести за копейки где угодно, ну, если руки растут откуда надо, то и сделать самому, благо прошивки для карточек достать в сети не мог разве что ленивый

Cisco против вирусов

Компания Cisco совместно с компаниями Network Associates, Symantec и Trend Micro - крупными производителями антивирусного пр…

Страница 491 из 593В начало...460470480489490491492493 500510520...

Еженедельный дайджест

Спасибо за подписку! Мы будем присылать важные новости ИБ в еженедельном дайджесте
Ошибка при подписке Случилась ошибка при создании подписки на наш дайджест. Пожалуйста, попробуйте позднее
Важные события и скидка на подписку:
«ХАКЕР» ДОСТУПЕН ТОЛЬКО В ЭЛЕКТРОННОЙ ВЕРСИИ
Оформи подписку — получи:
  • доступ к платным материалам сайта
  • доступ ко всем номерам PDF
4000 р.
на год
920 р.
на месяц

«Хакер» в соцсетях

Материалы для подписчиков