Что касается качества языка Python.
Python ([ˈpaɪθən]; па́йсон, па́йтон, пито́н) — высокоуровневый язык программирования общего назначения с акцентом на производительность разработчика и читаемость кода. Синтаксис ядра Питона минималистичен. В то же время стандартная библиотека включает большой объём полезных функций.
Python поддерживает несколько парадигм программирования, в том числе структурное, объектно-ориентированное, функциональное, императивное и аспектно-ориентированное. Основные архитектурные черты — динамическая типизация, автоматическое управление памятью, полная интроспекция, механизм обработки исключений, поддержка многопоточных вычислений и удобные высокоуровневые структуры данных. Код в Питоне организовывается в функции и классы, которые могут объединяться в модули (которые в свою очередь могут быть объединены в пакеты).
От себя добавлю. Питон решает многие повседневные рутинные задачи
за очень короткий промежуток временни, в то время как другие языки решают ту же задачу в 30 раз дольше. В то же время питон являтся полноценным языком программирования поддерживающим все новые IT технологии. Полноценного бота на питоне можно написать за 3 часа(очень качественного бота). Питон может взаимодействовать с mail и другими web сервисами в несколько строк кода. Простыми словами это очень мошный и понятный язык. Небольшой пример: за пол часа можно написать скрипт выводяший вам в чат цитаты с башорга. Час можно написать скрипт который дает возможность обшаться в ICQ через чат Lineage, а также читать почту приходяшию вам на емаил. Боты могут взаимодействовать вместе хоть через мыло.Python может использовать базы данных также легко. Поробуйте этот язык и я уверен, что вы его полюбите, неполенитесь разобраться в этом вопросе.
Что касается драйвера и интервейса NDIS.
Первое - в код приложения не внедряется никакой другой посторонний код;
Второе - на основе NDIS сама OS невидет проходящий мимо нее трафик.
Из этого следует, что никакая новая зашита не сможет засеч сам факт
"взлома". Даже антивирусы стояшие на вашей машине неувидят этот трафик
По идее с этим драйвером можно контролтровать весь трафик достаточно указать имя приложения или порт и использовать у себя в скрипте.
Что каcается реализации.
"FastScript не поддерживает Питон, исчи компонент сам =)"
Что касается втавки самого скрипта с программу на C++, то это
делается в несколько строк кода, извлеченте параметров из питона + еше несколько строк кода. Достаточно указать 2-3 заголовочных файла питона, которые идут в поставке с ним и указать компилятору несколько библиотек для линковки. Примерно это будет выглядеть так:
#include "pyhon.h"
#include "python\blabla.h"
{
RyFile("MegaICQIMailBotByIVANZADOV");
}
"что мешает самому это сделать? Исходный код ПНХ доступен каждому. Просто большинство народу, авторы и простые юзвери ИМХО учили дельфу, поэтому юзают пнх, кому нравится С два креста - юзают Сауроновский програмко."
Видел как то на Ассемблере реализацию снифа всего трафа в 30 строк кода.... Если даже не писать сам драйвер есть полезная фри библиотека
которая контролирует весь трафик и подключается также легко. Используется в MetasploitFrameWork.
Ссылки
Реализация снифа и подмены на Ассемблере с помощью библиотеки winpcap
http://wasm.ru/article.php?article=othergalaxy
Это и есть у же готовый драйвер (также нужна библиотек libpcap).
Описание
winpcap - драйвер устройства, который добавляет к Windows 95, Windows 98, Windows NT и Windows 2000 способность фиксировать и послать сырые пакеты(от себя - в сырых пакетах можно извенить свой MAK и IP адрес, а также много других полезных вкусностей, также хочу добавить, что "сырые пакеты" это терминолгия). Packet.dll - API, который может использоваться для непосредтсвенного доступа к функциям BPF драйвера. WinPcap экспортирует набор примитивов, совместимых с libpcap, известной библиотекой сбора данных для UNIX систем. Программа предлагает набор функций высокого уровня, позволяя использовать пакеты, независимо от основных сетевых аппаратных средств и операционной системы.
Пример отпраки Email (если бы это было в ПНХ, то 3 стороки кода и отправляем через Lineage
)
#!/usr/bin/env python
# -*- coding: cp1251 -*-
"""Функции для клиентской базы"""
from smtplib import SMTP
import poplib, email
import os
from email.MIMEMultipart import MIMEMultipart
from email.MIMEBase import MIMEBase
from email.MIMEText import MIMEText
from email.Header import make_header as mkh
from email.Header import decode_header as dkh
from email.Utils import COMMASPACE, formatdate
from email import Encoders
from email import Charset
in_server = 'pop3.mail.ru'
out_server = 'smtp.mail.ru'
username = ''
userpass = ''
fromadr = '' # от кого
toadr = '' #кому
text = u'''Бе-бе-бе)))'''.encode('koi8-r') # текст письма
subject = 'Привет-привет!' # тема
sql_file = 'c:/text.txt' # вложение
class cb_import:
def receive_mail(self):
con = poplib.POP3(in_server)
con.getwelcome()
con.user(username)
con.pass_(userpass)
response, lst, octets = con.list()
for msgnum, msgsize in [i.split() for i in lst]:
(resp, lines, octets) = con.retr(msgnum)
msgtxt = "\n".join(lines)+"\n\n"
msg = email.message_from_string(msgtxt)
msg_from = msg['from']
msg_to = msg['to']
msg_date = msg['date']
msg_subj = "".join([text for text,enc in dkh(msg['subject'])])
print "* От: %s\n* Кому: %s\n* Дата: %s\n* Тема: %s\n" % (msg_from,msg_to,msg_date,msg_subj)
msg_parts = [(part.get_filename(), part.get_payload(decode=True))
for part in msg.walk() if part.get_content_type() == 'text/plain']
for name,data in msg_parts:
if name != None: # вложенный текстовый файл
print "Вложенный файл: "+name
f = file(name,'wb')
f.write(data)
f.close()
else: # текст письма
print "Текст письма: "+str(data)
con.quit()
class cb_export:
def send_mail(self):
msg = MIMEMultipart()
msg['From'] = fromadr
msg['To'] = toadr
msg['Date'] = formatdate(localtime=True)
msg['Subject'] = mkh([(subject, 'windows-1251')])
msg.attach( MIMEText(text, _charset = 'koi8-r') )
#part = MIMEBase('application', 'octet-stream')
part = MIMEBase('text', 'plain') # вложение для текстового файла
part.set_payload( open(sql_file,"rb").read() )
Encoders.encode_base64(part)
part.add_header('Content-Disposition', 'attachment', filename=os.path.basename(sql_file))
msg.attach(part)
con = SMTP(out_server)
con.login(username, userpass)
con.set_debuglevel(1)
con.sendmail(fromadr, toadr, msg.as_string())
con.quit()
#cb = cb_export()
#cb.send_mail()
#cb = cb_import()
#cb.receive_mail()
Оригинальная подсветка и отступы есстевтвенно не сохранились