Tutorial dev c++ nº3 - começando com o "if" e com o "else"

Bom aqui está o código e o resultado final do projecto.

Bem neste programa vou começar por mostrar como se utilizam as estruturas condicionais if e else, tendo o programa como objectivo pedir 2 numeros e dizer qual dos dois é o maior.

Bem e agora vai ficar a explicação de como fiz isto ^^

Bom, antes de mais há que declarar as bibliotecas "conio" e "stdio", sempre com o "include" antes das mesmas com as coisas apropriadas. Depois abre se o programa com o "main", abre se as chavetas para se começar a programar, depois disso declara-se duas variáveis "a" e "b" como inteiras, depois apartir do "printf" metemos o texto pedindo para inserir os números e com o "scanf" inserimos os numeros em questão no qual o mesmo os vai igualar ás variáveis em questão que neste caso são o "a" e o "b".

#include «stdio.h»
#include «conio.h»

main()
{
int a,b;
printf("Insira um numero\n");
scanf("%d",&a);
printf("Insira outro numero\n");
scanf("%d",&b);



Agora vêm então a parte de programar utilizando as estruturas condicionais "if" e "else", vamos pensar assim temos 2 pessoas, se uma for mais alta que a outra então aquela e a mais alta, e mas se a outra for a mais alta, fica então com esse valor, a estrutura "if" não e nada mais nada menos que uma comparação entre 2 variáveis, em que se compara se uma e maior que a outra, menor que a outra, diferente da outra, depois do resultado que se obtem apartir daquela afirmação, é apresentado no ecrã com um "printf", mas caso a afirmação que está dentro do if não seja verdadeira, ou não acontece nada, ou então utiliza se um "else" para podermos meter outra afirmação dentro de outro "if", neste caso comparamos as variaveis a e b e depois consoante a que for maior, é dada o valor que foi posto no printf ao if ao qual a afirmação se nota que é verdadeira, depois acaba se o programa com o "getch" e o "return".


if(a>b)
printf("O valor n1 eh o maior\n");
else
printf("O valor n2 eh o maior\n");
getch();
return(0);
}

Bem divirtam se e qualquer coisa mentam comentário que eu respondo vos a quaisqueres duvidas :)

Tutorial dev c++ nº2 - aprender a fazer calculos


Bem lá vamos nós para o nosso segundo tutorial, neste vamos aprender mesmo a fazer os quatro tipos básicos de calculos com numeros, ou seja, a soma, a subtracção, a multiplicação e divisão.

Bem vamos la então programar :

Bem como sabem 1º tem que declarar as bibliotecas stdio e conio, escrever o main, e abrir as chavetas,

depois disso...

float a,b,soma,sub,div,mult;
printf("Insira um valor\n");
scanf("%f",&a);
printf("Insira outro valor\n");
scanf("%f",&b);
soma=a+b;
sub=a-b;
div=a/b;
mult=a*b;

Declaram 2 variaveis para os numeros, neste caso é a e b, depois para os vários tipos de conta que se quer fazer, deve se declarar uma variavel, e devemos declarar todas elas como float, devido ao caso de poder haver numeros decimais, e consequentemente no scanf, vai ficar %f la dentro, em vez de %d como quando se decaram as variaveis em int. Agora e assim para cada variavel declarada para reproduzir as contas devemos iguala la a acção que queremos efectuar, e depois disso acabar com ;, como em tudo o resto que se faça. depois de metermos as contas todas a funcionar chegou a altura de fazermos aparecer os resultados no ecra:


printf("a soma dos dois valores eh: %.2f\n",soma);
printf( "a subtracao dos dois valores eh: %.2f\n",sub);
printf( "a divisao dos dois valores eh: %.2f\n",div);
printf("a multiplicacao dos dois valores eh: %.2f\n", mult);
getch();
return(0);
}


Então agora e assim, para cada conta, e para ficar mais legivel e perceptivel, fiz 4 printf's, agora e assim, na parte para apresentar os valores, em vez de so meter %f, meti %.2f, para que assim o valor apresentado tenha duas casas decimais, mas isso poderão voces movimentar da forma que queiram, depois metem o nome das variáveis pelo qual querem apresentar os valores, e depois fecham o programa e fim!

Bem até a prócima divirtam se :)
FONTE:http://aprendendo-a-programar.blogspot.com/

Tutorial dev c++ nº1 - - - Meter o nome e a idade no Ecra!


Bem este programa tem como objectivo escrever o nome e a idade separadamente no ecrã e ele virá a aparecer depois tudo junto numa única frase.

Bem então vamos começar.

Como todos sabem, na linguagem C é preciso declarar sempre as bibliotecas, pois sem elas nao conseguiremos ter acesso as bases do programa em si.

Bem estas duas bibliotecas são essenciais para qualquer programa que venhas a desenvolver no futuro:


#include stdio.h
#include conio.h



PS:o conio e o studio, estão cada um no meiu de 2 <> so que como o blog da erro a a publicar assim, mas nao se esqueçam de meter assim :P!

depois de abrires as bibliotecas, chegou a altura de fazer um main(), abrir chaveta, e começar por programar as variaveis:

main()
{
char nome[10];
int idade;

Então é assim o main server para começar o programa, depois abres chavetas, pois tudo o que aparece dentro do executável é o que está programado nas chavetas, depois declara se as variáveis que vais usar, int e float- para numeros, mas o float e so para numeros decimais, e depois temos o char para caracteres, por norma não é necessario meter aquilo do 10 a frente da variavel, so mesmo em arrays, mas mais um erro estupido do vista ^^

Bem agora chegou a altura de fazer o resto:

printf("Insira o seu nome\n");
scanf("%s",&nome);
printf("Insira a sua idade\n");
scanf("%d",&idade);
printf("O meu nome eh %s e tenho %d anos\n", nome, idade);

Então e assim, sempre que se deseja que apareça alguma mensagem no ecrã e necessário fazer um printf, pois e aquilo que faz com que apareça uma mensagem la, e o scanf utiliza sse no caso de nos querer mos escrever no ecrã e querermos utilizar o que la escrevemos, para eventos futuros, como vai acontecer agora, que por fim na altura da frase final, e metido um printf, sem um scanf em baixo, pois essa frase vai ser o fim do programa, e na frase, vão ser alojadas coisas novas, que sao o %s e o %d, que são declarados no scanf, de forma a transportar para la, tudo o que foi assim escrito em cima, depois por fim feicasse as aspas, e mete se o nome das variaveis pela ordem ao qual foram metidas na frase.

E para acabar o programa, faz se sempre o mesmo:

getch();
return(0);
}

Bem aqui fica o 1º tutorial, espero que gostem e divirtam se :D

CREDITOS: P3DRO
FONTE: http://aprendendo-a-programar.blogspot.com/

Tutorial em video aula como Criar um crypter 100% indetectavel


posto aqui um tutorial no idioma espanhol que nao de minha autoria mais ta aee pra quem ta comesando na programacao em VB6
Crear um crypter 100% indetectavel Part1


Crear um crypter 100% indetectavel Part2


Codigos VB: http://www.megaupload.com/?d=2CP6Q2VC
Codigo da stub: http://www.megaupload.com/?d=JECUCXCI

senha pra descompactar o rar:InfinityDeath

Fonte: www.cybermundo.net

Manual de programação Delphi 6 e 7 (Descarga!)

Este é um livro muito bom delphi programascion me ajudou muito no processo de um aluno da Delphi, que é uma linguagem de programação orientada a objetos e visualmente.


Delphi Delphi

El CD-ROM adjunto contiene la versión de evaluación de Delphi 7, y el código fuente desarrollado a lo largo del libro. O CD-ROM contém a versão trial do Delphi 7, eo código-fonte desenvolvidos ao longo do livro.

INDICE INDEX
PRÓLOGO PREFÁCIO
CAPÍTULO 1 INTRODUCCIÓN A LOS SISTEMAS INFORMÁTICOS CAPÍTULO 1 INTRODUÇÃO AOS SISTEMAS DE COMPUTADOR
1.1 Elementos básicos 1,1 Basics
1.2 Registros del procesador Processador de 1,2 Grave
1.3 Ejecución de instrucciones 1,3 Execução de Instruções
1.4 Interrupciones 1,4 Interrupções
1.5 Jerarquía de memoria 1,5 Hierarquia de Memória
1.6 Memoria cache 1,6 Cache
1.7 Técnicas de comunicación de E/S 1,7 Communication Skills I / S
1.8 Lecturas recomendadas 1,8 Leitura Recomendada
1.9 Problemas Problemas 1,9
APÉNDICE 1A Rendimiento de las memorias a dos niveles Apêndice 1A Desempenho de relatórios para dois níveis
APÉNDICE IB Control de procedimientos Controle de procedimentos ANEXO IB
CAPÍTULO 2 INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS Capítulo 2 Introdução aos sistemas operacionais
2.1 Funciones y objetivos de los sistemas operativos 2.1 Funções e objectivos dos sistemas operacionais
2.2 Evolución de los sistemas operativos 2.2 Evolução dos Sistemas Operacionais
2.3 Logros principales 2,3 As principais realizações
2.4 Sistemas de ejemplo Exemplo 2.4 Sistemas
2.5 Visión general del resto del libro 2.5 Visão geral do resto do livro
2.6 Lecturas recomendadas 2,6 Leitura Recomendada
2.7 Problemas Problemas 2,7
CAPÍTULO 3 DESCRÍPCIÓN Y CONTROL DE PROCESOS CAPÍTULO 3 DESCRIÇÃO E CONTROLE DE PROCESSO
3.1 Estados de un proceso 3.1 Situação de um processo
3.2 Descripción de procesos 3.2 Descrição dos processos
3.3 Control de procesos 3,3 processo de Controle
3.4 Procesos e hilos 3.4 Processo e linha
3.5 Ejemplos de descripción y control de procesos 3,5 Exemplos de descrição de processo e controle
3.6 Resumen 3.6 Resumo
3.7 Lecturas recomendadas 3,7 Leitura Recomendada
3.8 Problemas Problemas 3,8
CAPÍTULO 4 CONCURRENCIA: EXCLUSIÓN MUTUA Y SINCRONIZACIÓN CAPÍTULO CONCORRÊNCIA 4: exclusão mútua e SINCRONIZAÇÃO
4.1 Principios generales de concurrencia 4.1 Princípios gerais de concorrência
4.2 Exclusión mutua: soluciones por software 4,2 Exclusão Mútua: As soluções de software
4.3 Exclusión mutua: soluciones por hardware 4,3 Exclusão Mútua: as soluções de hardware
4.4 Semáforos 4,4 Semáforos
4.5 Monitores 4,5 Monitores
4.6 Paso de mensajes Mensagem 4,6 Etapa
4.7 Problema de los lectores/escritores 4,7 Problema de leitores / escritores
4.8 Resumen 4,8 Resumo
4.9 Lecturas recomendadas 4,9 Leitura Recomendada
4.10 Problemas 4,10 Problemas
CAPÍTULO 5 CONCURRENCIA: INTERBLOQUEO E INANICIÓN CAPÍTULO 5 COMPETIÇÃO: Deadlock e fome
5.1 Principios del interbloqueo 5.1 Princípios de Deadlock
5.2 Prevención del interbloqueo 5.2 Prevenção de Deadlock
5.3 Detección del interbloqueo 5,3 Detecção de Deadlock
5.4 Predicción del interbloqueo 5,4 Previsão Deadlock
5.5 El problema de la cena de los filósofos 5,5 O problema do jantar dos filósofos
5.6 Sistemas de ejemplo 5,6 Exemplo sistemas
5.7 Resumen 5,7 Resumo
5.8 Lecturas recomendadas 5,8 Leitura Recomendada
5.9 Problemas Problemas 5,9
CAPÍTULO 6 GESTIÓN DE MEMORIA CAPÍTULO 6 GERENCIAMENTO DE MEMÓRIA
6.1 Requisitos de la gestión de memoria 6.1 Requisitos para o gerenciamento de memória
6.2 Carga de programas en memoria principal 6.2 programas de carga na memória principal
6.3 Resumen 6.3 Resumo
6.4 Lecturas recomendadas 6,4 Leitura Recomendada
6.5 Problemas Problemas 6,5
APÉNDICE 6A Carga y montaje Carregamento e montagem ANEXO 6A
CAPÍTULO 7 MEMORIA VIRTUAL CAPÍTULO DE MEMÓRIA VIRTUAL 7
7.1 Estructuras de hardware y de control 7.1 Estrutura e hardware de controle
7.2 Software del sistema operativo 7,2 software do sistema operacional
7.3 Ejemplos de gestión de memoria 7,3 Exemplos de Gerenciamento de Memória
7.4 Resumen 7.4 Resumo
7.5 Lecturas recomendadas 7,5 Leitura Recomendada
7.6 Problemas 7.6 Problemas
APÉNDICE 7A Tablas de dispersión APÊNDICE tabela de hash 7A
CAPÍTULO 8 PLANIFICACIÓN DE MONOPROCESADORES CAPÍTULO Uniprocessor PLANEJAMENTO 8
8.1 Tipos de planificación 8.1 Tipos de planejamento
8.2 Algoritmos de planificación 8,2 algoritmos de Programação
8.3 Resumen 8.3 Resumo
8.4 Lecturas recomendadas 8,4 Leitura Recomendada
8.5 Problemas 8.5 Problemas
APÉNDICE 8A Tiempo de respuesta APÊNDICE Tempo de Resposta 8A
CAPÍTULO 9 PLANIFICACIÓN DE MULTIPROCESADORES Y EN TIEMPO REAL CAPÍTULO 9 PLANEJAMENTO E EM TEMPO REAL COM MÚLTIPLOS
9.1 Planificación de multiprocesadores Agendamento de 9,1 Multiprocessor
9.2 Planificación en tiempo real 9,2 Planejamento em tempo real
9.3 Sistemas de ejemplo 9,3 Exemplo sistemas
9.4 Resumen 9,4 Resumo
9.5 Lecturas recomendadas 9,5 Leitura Recomendada
CAPÍTULO 10 GESTIÓN DE LA E/SY PLANIFICACIÓN DE DISCOS CAPÍTULO DE GESTÃO DO PLANEJAMENTO 10 DISC E / SY
10.1 Dispositivos de Entrada/Salida 10,1 Input / Output
10.2 Organización de las funciones de E/S 10,2 Organização das funções de E / S
10.3 Aspectos de diseño en los sistemas operativos 10,3 Questões de projeto em sistemas operacionais
10.4 Almacenamiento intermedio de E/S 10,4 Tampão I / S
10.5 Entrada/Salida a disco 10,5 I / O no disco
10.6 Sistemas de ejemplo 10,6 sistemas Exemplo
10.7 Resumen Resumo 10,7
10.8 Lecturas recomendadas 10,8 Leitura recomendada
10.9 Problemas 10,9 Problemas
CAPÍTULO 11 GESTIÓN DE ARCHIVOS Gestão de Ficheiros CAPÍTULO 11
11.1 Introducción 11.1 Introdução
11.2 Organización y acceso a archivos 11,2 Organização e acesso a arquivos
11.3 Directorios de archivos 11,3 diretórios de arquivo
11.4 Compartición de archivos 11,4 compartilhamento de arquivos
11.5 Agrupación de registros Grupo regista 11,5
11.6 Gestión del almacenamiento secundario 11,6 Gerenciamento de Armazenamento Secundário
11.7 Sistema de ejemplo — SISTEMA UNIX, VERSIÓN V 11,7 exemplo do Sistema - UNIX SYSTEM, VERSÃO V
11.8 Resumen Resumo 11,8
11.9 Lecturas recomendadas 11,9 Leitura Recomendada
11.10 Problemas Problemas 11,10
CAPÍTULO 12 REDES Y PROCESO DISTRIBUIDO CAPÍTULO 12 redes e processamento distribuído
12.1 Arquitecturas de comunicaciones Arquiteturas 12,1 Comunicações
12.2 La serie de protocolos TCP/IP 12,2 O número de TCP / IP
12.3 Proceso cliente/servidor 12,3 cliente Process / servidor
12.4 Proceso distribuido mediante envío de mensajes 12,4 mensagens Processo distribuídos através de
12.5 Llamadas a procedimientos remotos 12,5 Remote Procedure Calls
12.6 Resumen Resumo 12,6
12.7 Lecturas recomendadas 12,7 Leitura Recomendada
12.8 Problemas 12,8 Problemas
CAPÍTULO 13 GESTIÓN DISTRIBUIDA DE PROCESOS CAPÍTULO 13 GESTÃO processos distribuídos
13.1 Migración de procesos 13,1 processo de migração
13.2 Estados globales distribuidos 13,2 Distribuído Estados global
13.3 Gestión distribuida de procesos — exclusión mutua Distribuídos Process Management 13.3 - exclusão mútua
13.4 Interbloqueo distribuido 13,4 Deadlock Distribuído
13.5 Resumen Resumo 13,5
13.6 Lecturas recomendadas 13,6 Leitura Recomendada
13.7 Problemas 13,7 Problemas
CAPÍTULO 14 SEGURIDAD CAPÍTULO DE SEGURANÇA 14
14.1 Amenazas a la seguridad 14,1 Ameaças de Segurança
14.2 Protección Proteção 14,2
14.3 Intrusos 14,3 Intrusion
14.4 Virus y amenazas afines Vírus e ameaças semelhantes 14,4
14.5 Sistemas de confianza 14,5 Sistemas de confiança
14.6 Seguridad en redes 14,6 Security Network
14.7 Resumen Resumo 14,7
14.8 Lecturas recomendadas 14,8 Leitura Recomendada
14.9 Problemas 14,9 Problemas
APÉNDICE 14A Cifrado APÊNDICE Encryption 14A
APÉNDICE A ANÁLISIS DE COLAS APÊNDICE A ANÁLISE DE FILAS
Al ¿Por qué el análisis de colas? Por que para a análise das filas?
A.2 Modelos de colas A.2 Modelos Queueing
A.3 Colas de un solo servidor A.3 filas de servidor único
A.4 Colas multiservidor A.4 filas multiservidor
A.5 Redes de colas Redes de filas A.5
A.6 Ejemplos A.6 Exemplos
A.7 Otros modelos de colas A.7 Outros modelos de filas
A.8 Lecturas recomendadas A.8 Leitura
ANEXO A Conceptos básicos de probabilidades y estadística ANEXO A Noções básicas de probabilidade e estatística
APÉNDICE B DISEÑO ORIENTADO A OBJETOS APÊNDICE B Object-Oriented Design
Bl Motivación Bl motivação
B.2 Conceptos de orientación a objetos B.2 Conceitos OO
B.3 Ventajas del diseño orientado a objetos B.3 Benefícios do projeto Orientada a Objetos
GLOSARIO GLOSSÁRIO
REFERENCIAS Referências
LISTA DE ACRÓNIMOS LISTA DE SIGLAS
ÍNDICE ANALÍTICO INDEX

DESCARGAR / DOWNLOAD
PESO 50 MB

COPIE E COLE NO SEU NAVEGADOR SE NAO FUCIONAR ESSE LINK ==>https://rs389l3.rapidshare.com/#!download|389tl3|94989958|bta8.rar|53114|R~2ADE2E73D71A9C661B90711706FC65EB

[Delphi] como iniciar ferramentas de administração remota!

Revisão 1.3 do tutorial "Introdução ao Delphi, Trojan-oriented" de Sr_Sombrero.
Se você copiar este tutorial no todo ou em parte, não se esqueça de mencionar o autor e [http://infognosisgroup.blogspot.com.br]

Olá! Este guia é para aqueles que querem aprender a programação e como aconteceu comigo, não sei por onde começar. Vou explicar brevemente o básico para evitar o tédio e então mover-se para explicar como programar um Trojans simples.

O que é Delphi?
É uma linguagem de programação visual baseada em Pascal. Tem bom equilíbrio entre a simplicidade e poder, e é ideal para iniciantes em programação e está bem estruturado. Porque ele é usado para multiuso programação quase qualquer aplicação. Entre as aplicações mais populares são programados em Delphi Skype.

Entre os Trojans são programados em Delphi:
Poison Ivy
Instituição de 2004
Besta
Sub7
NetBus
Optix Pro
Assassin 2
TequilaBandita
Bandook
Rat nuclear
Coolvibes

Esta lista (incompleta) é mostrado para ser uma linguagem ideal para o nosso propósito. Além disso Binders podem ser feitas e qualquer outro programa.

Para mais informações, consulte a wikipedia http://es.wikipedia.org/wiki/Delphi

Qual é a versão começar?
Você não precisa da versão mais recente. Eu recomendo que você instale pelo menos a versão 6 (que é o utilizado no momento da escrita deste tutorial). Outras versões mais recentes que tenham sido populares foram 7 e 2007.

A nova versão irá consumir mais recursos para a eleição então você tem que considerar um PC com essa conta, mas para você ficar quieto eu lhe digo que a versão 7 para baixo funciona em qualquer computador a partir deste milênio:-D e programas feitos em uma versão mais antiga pode ser compilado sobre os casos mais recentes e mais no passado, com pouca ou nenhuma mudança.

As diferentes versões podem ser baixadas para testes de redes P2P, ou versões menores rapidshareware página livre para Borland ou CodeGear.

Para os ansiosos que queria compilar algo

Provavelmente o primeiro contato que tiveram com Delphi quis compilar alguma fonte que encontrou na net. Se compilado, para vós, mas de erro se deu não decepciona. Vou explicar a causa mais comum que uma fonte não compilou para baixo.

Assistir a exibição de Delphi é uma área com rótulos que dizem "Standard", "adicionais", etc. e para baixo tem pequenas imagens de botões, menus, etc. É a "paleta de componentes".
Às vezes acontece que estão faltando componentes e, portanto, não consegue abrir ou compilar de outras fontes.
Esta paleta (ou bar) é customizável, e cada versão do Delphi traz pequenas diferenças nos componentes incluídos e também pode instalar componentes feitos por terceiros.
Que um componente não está no bar não significa que nós temos, porque se viesse em uma versão anterior é normalmente na pasta do Delphi e Tenema para instalar nós.

Esta explicação foi para aqueles que não têm sido capazes de compilar algo não jogar tudo acho que é muito difícil.
A questão da instalação de componentes deve ser visto abaixo, agora vamos seguir desde o início, porque é a maneira mais rápida de aprender.

O primeiro manual

Antes de tudo uma recomendação: "manuais print" encuadernenlos ou pegá-lo em uma pasta para indicá-los e fazer anotações. No papel lê muito mais rápido do que a tela fixa e muito mais. Não quero dizer que é preciso para imprimir qualquer idiota, mas se os primers.

Para começar, há um manual de fácil leitura e exercícios em espanhol desde o início, embora seja um pouco velho, ele serve bem. Eu recomendo que você leia o capítulo "Banco de Dados 1" como o sujeito não nos interessam para o nosso propósito.

Você pode baixá-lo aqui Curso de Delphi - por Jorge
http://cursodelphi.iespana.es/cursodelp ... delphi.htm

-------------------------------------------------- -----------------------------------------

Alguns Pascal

Se você seguiu os passos recomendados no manual eles já têm uma prática bastante Delphi. Criaram suas primeiras aplicações, mas devem ser várias coisas no ar.
É hora de ver alguma teoria para entender melhor o que fizemos. Dissemos que Delphi é baseado em Pascal, por isso temos de fazer o básico dessa linguagem.

Curso de pascal (por Comac)
http://www.geocities.com/alvisonh/intro.htm

Este manual é útil, mesmo a partir da perspectiva de alguém que não sabe nada sobre programação. Explica tudo que você precisa para começar a programar em Pascal.
É em espanhol e o único inconveniente é que é a era do "Turbo Pascal", por mais que se aplica a Delphi.
Eu recomendo que você leia o capítulo 6 (incluído), e não se esqueça que se você imprimir melhor.

Outra alternativa manual
Pascal essenciais (Marcos Cantu)

Uma introdução ao Delphi Pascal orientado. Foi escrito pelo autor mais conhecido por Delphi. Como em seus livros são os aspectos mais básicos, torna disponível (gratuitamente) este PDF em seu site. Link para uma versão em espanhol http://www.marcocantu.com/epascal/epascal_v1_spa.zip

Eles também podem ver o mesmo autor http://www.marcocantu.com/edelphi/edelphicode103.zip (em Inglês).

-------------------------------------------------- -----------------------------------------

Maneiras de programar um Trojan em Delphi

Ao fazer um trojan ou aplicação similar em Delphi podem seguem basicamente dois caminhos:

1) Crie um formulário em que trazemos componentes Delphi.
Vantagem: simplicidade.
Desvantagem: Usando uma forma afeta o tamanho do servidor (cerca de 220 Kb comprimido com UPX).

2) Crie uma aplicação do tipo console (aplicativo de console) e use unidades de luz ou diretamente chamar a API do Windows.
Vantagem: Se não usamos unidades para engordar o projeto pode ser alcançado por muito menor (cerca de 30 Kb).
Desvantagem: mais complexas.

Em um cavalo de Tróia de próxima geração, o usual seria o cliente com o primeiro método eo segundo servidor.
Como rookies temos que usar o primeiro método para o cliente eo servidor. Bem ... não decepcionado, os servidores da Optix, Sub7 e Roubo são feitas com este método e ninguém vai dizer que eles são ruins. O único problema, como eu disse, é o tamanho, mas dada a velocidade das conexões de hoje não é tão importante.

Aplicações cliente-servidor usando componentes

Delphi traz diferentes componentes para este fim são:
1) TServerSocket / TClientSocket comumente usado para trojans, simples e eficaz.
2) Componentes INDY mais completa e maior. Eu não vi nenhum Trojan programado usando estes componentes, mesmo que eu vi que são amplamente utilizados para outras aplicações cliente / servidor.

Então vamos usar TServerSocket / TClientSocket
(Eles estão na seção "Internet" da "paleta de componentes" na IDE Delphi, se não você tem que instalá-los).

Aqui estão as fontes nas quais trabalhamos. Para compilar o código deve ser colado cada arquivo no bloco de notas e salve-o com o nome correspondente. Em seguida, coloque todos os arquivos na mesma pasta e você pode abri-lo com Delphi.

Ejemplo 1
http://www.marcocantu.com/code/md6htm/Client1.htm
http://www.marcocantu.com/code/md6htm/Server1.htm

Ejemplo 2
http://www.marcocantu.com/code/md6htm/Client2.htm
http://www.marcocantu.com/code/md6htm/Server2.htm
Estes exemplos simples são mais úteis para ver o código fonte completo de um Trojan, como podemos ver o essencial, sem se tornar emaranhado numa teia de código. Agora vou explicar um pouco:

Ao trabalhar com sockets há 2 abordagens possíveis:
1) Ler dados do socket e escrever de forma assíncrona, e não bloqueia a execução de outro código na aplicação, enquanto isso acontece. Isso é chamado de "conexões nonblocking".
2) A outra alternativa é a utilização de "conexões bloqueio", onde a aplicação deverá ler nem escrever está completo antes de executar a seguinte linha de código. Por "ligações de bloqueio" você precisa usar threads, que é mais complicado, então vamos fazê-lo da primeira forma (Trojans mais comum).
Esta propriedade é escolhido no "Server Type" ClientSocket componente e ServerSocket.

Trazer os exemplos, ambos são feitos com componentes e ClientSocket ServerSocket usado no modo nonblocking.

Primeiro exemplo (Client1 e Server1)

Servidor

Ver ServerSocket1 propriedades do componente (nenhuma explicação necessária).
Veja também os eventos desse componente.

Todos os códigos relacionados aos eventos da tomada porque o programa não prevê interação do usuário. No entanto, o servidor tem 3 espaços onde a informação é registrada.

Assistir ao evento "OnClientConnect", isso indica a primeira vez que o servidor aprende a conexão com o cliente. Usando "TCustomWinSocket" o servidor pode ver quem está tentando se conectar. No final deste evento que atualizar a lista de conexões usando a propriedade "ActiveConnections" do servidor.

Um código semelhante é executado quando o cliente se desconecta do servidor (OnClientDisconnect).

Vemos que o servidor pode ler as mensagens (que envia ao cliente) chamando o ReciveText função. Esta operação deve ser realizada somente quando houver dados disponíveis para leitura, ou quando o evento é acionado OnClientRead.
Note que esta é uma leitura destrutiva, as informações extraídas (stream) é removido de lá.

Cliente

Ver ClientSocket1 propriedades do componente (nenhuma explicação necessária).
Veja também os eventos desse componente.

O cliente é mais interativo. Há EditBox onde fica o endereço do servidor ao qual você deseja se conectar. Com CheckBox alterna a ligação.
Lembre-se do primeiro ziper remoto? tinha uma opção para se conectar, porque eu não poderia fazer de outra forma =).

Note que você pode escrever uma mensagem em outro EditBox e pressionando a enviar.

Tenha em mente que estes programas estão longe de ser perfeito, porque eles não controlam certas coisas. Por exemplo. o socket é ativa antes de enviar a mensagem, assim você pode obter erros se executar determinadas ações.


Segundo exemplo (Client2 e Server2)

Servidor

Aqui já estamos vendo a implementação de um protocolo (como aqueles usados ​​por cavalos de Tróia).
Um protocolo é um conjunto de regras (comandos). Basicamente, o servidor pode receber diferentes ordens e executar a ordem de acordo com diferentes ações.

Neste exemplo, o servidor aceita 4 tipos de ordens:
Listando um diretório.
Enviar uma BMP.
Enviar um txt.
Executar um programa.

Por sua vez, quando o servidor responde para indicar que tipo de informação também irá enviar as informações.

O essencial é ver o que o servidor quando você lê o socket (OnClientRead).
Primeiro extrair os primeiros 5 caracteres de texto recebida por estes contêm o comando.
Em seguida, executar um código dependendo do texto (comando) contidas nestes primeiros 5 caracteres. Os comandos são:
EXEC!, TEXT!, BITMED!, LISTA!
As fontes podem ver o código que é executado no comando.

Cliente

Vimos que o servidor também envia 5 caracteres que permitem que o cliente saber que tipo de informação que você recebe.
No exemplo do cliente é outro caminho a seguir para ler o cabeçalho. (Eu sempre usei o acima para o cliente e servidor).
Aqui, quando o cliente lê, define um estado para encontrar as informações que vem a seguir.

Isso é tudo por agora, Se você quiser ver mais sobre este assunto pode baixar o livro de "Mastering Delphi 6" Mark Cantu em PDF em qualquer rede P2P (em Inglês). Este tópico é discutido no capítulo 21.

-------------------------------------------------- ----------------------------------------

Nosso Primeiro Trojan


Neste exemplo veremos duas coisas novas: Como ativar ClienteSocket usando um botão em vez de uma caixa de seleção para saltar e como evitar erros.

Abra um novo projeto no Delphi e coloca um ServerSocket no formulário.
Definir as propriedades componente Active como True, ServerType em stNonBlocking e escolha uma porta (por exemplo, 800) no qual o servidor vai escutar.

Agora vamos escrever o OnRead evento.
No exemplo quando recebe o comando '01 'beeps servidor quando você começa a 02 "mostra a mensagem de um cliente e retorna uma confirmação, é que isto vai ser a base para novas parcerias de trabalho mais divertido de comandos .
Código:
TForm1.ServerSocket1ClientRead procedimento
(Sender: TObject; Socket: TCustomWinSocket);
Declaração Var: integer;
FullCommand, st: string;
começar
FullCommand = Socket.ReceiveText;
ST: = copy (FullCommand, 1,2);
Comando: = StrToInt (st);
Caso o comando de
01: bip;
02:
começar
ShowMessage (st);
st: = 'A mensagem de''' + r +'' 'foi recebido;
Socket.SendText (st);
end;
/ / Etc.
end;
end; Agora para o cliente.

Abra um novo projeto no Delphi e coloque um componente ClientSocket, três botões e dois EditBox.
Nas propriedades coloque Active para False ClientSocket ClientType stNonBlocking e colocar na mesma porta no servidor (ex.: 800).

Abaixo está o código para o evento OnCreate e OnError de ClientSocket1 OnRead e eventos OnClick dos botões Button1, Button2 e Button3:
Código:
TForm1.FormCreate procedure (Sender: TObject);
start
Button1.Caption: = 'Call';
Button2.Caption: = 'Send Beep ";
Button3.Caption: = 'Send Message';
Edit1.Text: = '127 .0.0.1 ';
Edit2.Text: = 'Hi Customer ";
end;

procedure TForm1.Button1Click (Sender: TObject);
start
if ClientSocket1.Active = False Then
try
ClientSocket1.Host = Edit1.Text;
ClientSocket1.Active: = True;
Button1.Caption: = "Disconnect";
except
ClientSocket1.Active: = False;
final
other
start
ClientSocket1.Close;
Button1.Caption: = 'Call';
end;
end;

TForm1.Button2Click procedure (Sender: TObject);
start
ClientSocket1.Socket.SendText ('01 ');
end;

TForm1.Button3Click procedure (Sender: TObject);
start
ClientSocket1.Socket.SendText ('02 '+ Edit2.Text);
end;

Procedure TForm1.ClientSocket1Read
(Sender: TObject; Socket: TCustomWinSocket);
var s: string;
start
s: = Socket.ReceiveText;
ShowMessage (s);
end;

Procedure TForm1.ClientSocket1Error
(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
start
ErrorCode: = 0;
Button1.Caption: = 'Call';
end;
O código é auto-explicativo, exceto perto do evento OnError. Com esse evento nós lidamos com os erros que ocorrem no soquete, e digitando "ErrorCode: = 0;" saltar para adverti-lo que um ESocketError.

Escondendo do Window Server

Com Application.ShowMainForm: = False; podemos fazer o aplicativo não aparecer na guia "Aplicativos" "TaskManager".

TForm1.FormCreate procedure (Sender: TObject);
start
Application.ShowMainForm: = False;
end; (Este post está sendo revisto e em construção)
 
Copyright ©2013 Infognosis Todos os Direitos reservados | Designed by Facçao-Central-BnZ de | Supported by Facçao-central-bnz