Dica de segurança: Por que devo atualizar meu WordPress, Joomla, Drupal ou qualquer gestor de conteúdos web?

Standard

Recentemente foi publicada na Icentral uma forma de inibir a frequência de ataques realizados a sites que usam Gestores de Conteúdos (mais conhecidos como CMS). A dica é simples e facilmente compreendida, recomendamos a leitura fortemente. Para acessar o conteúdo clique no link abaixo:

http://icentral.com.br/blog/qual-motivo-de-atualizar-um-cms-no-meu-host-quer-seja-wordpress-joomla-drupal-e-etc/

Segurança da Informação

Standard

Segurança da Informação (parte 1) – Conceitos Mod NUB 1

 

Intitulo “mod nub 1” a este artigo pois o considero extremamente básico para quem está querendo se aprofundar em um assunto, que na verdade é um mundo (e olhe que não é novo) vasto, não completamente desvendado e ainda um ramo cujo grau de conhecimento é levado ao extremo e requer superação mais que diária. (complicado de entender, não?… NÃO!)

Novamente não justifico o termo nub 1 para pessoas que não sabem de nada, na verdade destina-se a uma afirmação -> Vamos falar com simplicidade sobre o que é segurança.

Mais em breve faremos um artigo com mais ênfase em espionagem industrial.
Esse artigo na verdade encaixa-se muito bem às pessoas que adoram pirataria, ou “gestores de ti” que costumam “amarrar investimentos” (sim… sabe aqueles IMACS que sua empresa não compra alegando que é um investimento MUITO, MUITO, MUITO alto? Talvez aquilo não tenha tanta possibilidade de cair na malha fina dos [firmwares] de Motherboards, o que nada mais nada menos seria que um trojan (falo de backdoor) auto instalado/inicializado sempre que teu sistema for formatado/reiniciado/inicializado. OU talvez, quem sabe, a falta de conhecimento em ambientes Linux ou mesmo SOLUÇÕES para segurança proativa dos pcs é tratada como uma cereja do bolo [quando na verdade equivale-se à água que bebemos]).

 

Dividiremos este nub article em 2 pontos de vista:

 

– O carinha que chega em casa, fica de cueca em frente o seu laptop, com um umidificador de ar por perto de aparelhos eletrônicos (nub NE?).

– A instituição que possui um baú de ouro (é camarada, aquele DB, Aquele source que vocês desenvolvem, aquele aplicativo que parece uma arma nuclear, que vale muito e lhe custa muito, ou mais especificamente, aquela instituição que tem algo aonde vale a pena por em risco sua liberdade [sim, se for pego é xadrez!]).

 

Ao ponto 1, usuários domésticos

Como é gostosa a tentação de baixar um filme gravado através de um botão de camisa de um internauta que foi ao cinema, não? (sim, existem camcorders do tamanho de um botão de camisa, e não são caros)

Ou aquele aplicativo que custar-lhe-ia R$ 2.500,00, ou ainda melhor, “vamos testar esse Windows novo que saiu, achei aqui, olha, um torrent no the pirate bay… baixa aí, não, deixa que baixo na empresa, o link lá é bom…”, preciso comentar que isto é realidade absoluta? E os mp3s? Vamos baixar CDs?

Tenho fatos técnicos que vão fazer você mudar essa mentalidade.

Vamos ao ponto máximo da charada:

EU SERIA UM IMBECIL de simplesmente gravar com camcoder um filme inteiro (digamos, velozes e furiosos 5, ou mesmo Missão Impossível 4 [assistir amanhã]) com a vulnerabilidade de ser pego pela polícia, perder mulher, filho, cachorra e PC? Ou disponibilizar o último DVD do artista nacional/internacional mais caro e mais cobiçado da atualidade de graça?

Sim, isso deixa alguém por anos atrás de um paredão de concreto e aço.

TUDO, TUDO mesmo tem um preço, correr um risco tão absurdo de sofrer punições com leis nacionais (e até internacionais) não poderá lhe custar tão barato assim (falo como “downloader”), se você vive de baixar algo “arrumo free na web”, prepare os lombos pois vou agredir-lhe!

Existem técnicas (veja-as: http://pt.wikipedia.org/wiki/Esteganografia) que servem justamente para acabar com sua alegria. Esteganografia é o fato técnico para toda criminalidade baseada em “sharing”.
Esta questão de invisibilidade é tão séria que Charles Chaplin participou de um concurso de sósias DELE MESMO e tirou em terceiro lugar! Sim, nem ele parecia com ele mesmo… rsrsrs…

Deixe-me clarear sua mente. Se eu chegar em sua casa de terno e gravata eu sou o little_oak de terno e gravata, correto? ERRADO! Debaixo do meu terno posso estar carregando uma pistola, granada ou até mesmo um iphone 4 s ou um milestone 2 ;D.

Mas espere… você só sabia que eu tinha terno e gravata, não?

É aí que  a casa cai para você!

Em um filme/arquivo pdf/aplicativo pirata (ou Não pirata, mas a margem sob piratas é de pelo menos 90%) você estará carregando uma bomba oculta, isto graças aos joinners, sim, aplicativos que colocam UM ARQUIVO DENTRO DE OUTRO.

E você aí, se chegou até aqui deve estar dizendo: E EU COM ISSO?

“Lá xibatada”:
Quando eu executo um arquivo/programa/música em meu PC, baixados ou não da internet, a permissão que eu tenho como usuário será atribuída ao arquivo (sim, sim, não adianta falar de botão direito e executar com X nível de permissão que isso é passado/besteira quando falamos de buffer overflow/scalation) no momento da execução. AINDA QUE VOCÊ POSSUA UM ANTIVÍRUS PAGO, se você autoriza um arquivo a executar em seu S.O., o grau de detecção passa a ser mínimo (falo da defesa proativa do seu antivírus), logo você torna-se vulnerável!

Antivírus trabalham monitorando eventos/sockets/serviços do seu sistema, qualquer anomalia de comportamento em um dos 3 fatos desencadeia na execução de processos da defesa proativa do seu antivírus.

Até aí você sente-se blindado, está tudo atualizado mesmo… Enganou-se novamente!

Se você autorizou um aplicativo/filme/mp3 a rodar no seu S.O. há uma imensa chance de seu antivírus passar a confiar no comportamento (trust list), em outras palavras, FERROU-SE AMIGO!

Sabe aquele texto bacana que você escreveu para um artigo, ou para dar em cima da sua mulher / paquera / namorada / ficante… etc… etc…? Alguém já o leu devido sistemas de keyloggers automatizados! Rsrsrsrs…

Sabe aqueles dados do banco… Já se foram também… (isso vira inferno até na vida de terceiros… rsrsrsrs, depois detalho mais). Talvez você diga:

SAI DAÍ, BESTÃO, existe teclado virtual e senha que nem digito… hihiihi, bestão…

E EU LHE RESPONDO -> EXISTEM SCREENLOGGERS QUE PRINTAM CADA TELA TUA E ENVIAM DE FORMA ANÔNIMA E AUTORIZADA PELO TEU ANTIVÍRUS GRAÇAS A SUA NEGLIGÊNCIA DE BAIXAR TUDO E EXECUTAR TUDO QUE ENCONTRA NA WEB!

E se houverem dados de um processo contra alguém, uma informação sigilosa, um dado muito importante da minha família, amigos e etc? Isso foi junto?

CLARO QUE TUDO QUE CITEI trabalha em cima de probabilidades de sucesso MUITO ALTAS, e é provável que a resposta aqui seja SIM!

 

COMO RESOLVER ISSO?

1 – Formatar seu PC será quase nulo se estiver usando mídia pirata!

2 – Sim, aqueles “processos SEXY” com nome adob.exe, msnmsgss.exe, ou mesmo o svchost “aparentando santidade” não te garantem dias felizes, seu antivírus, mesmo sendo pago deverá ser substituído por outro que NÃO TEM UMA TRUST LIST (isso é SOMENTE para higienização, refiro-me a trustlist “virgem”).

3 – Evite baixar “QUALQUER COISA” NO SEU PC!

4 – SIM, aqueles emails que vêm de pessoas conhecidas suas SÃO PRIORIDADE para scan, principalmente os que possuem títulos como: “PEGUEI AS FOTOS DA TRAIÇÃO”, “EU LHE FALEI…”, “SEU NOME ESTÁ NO SPC”… etc.  (provavelmente o PC desta pessoa já se foi junto com tantos trojans, aquilo lá, na verdade é um estábulo de tanto cavalo de Tróia).

Antes que você ache que estou sendo muito metido, pense com carinho, pois da forma que citei ainda é possível usar seu PC como gateway para ataque a um banco, por exemplo, ou apenas como um PC zombie afim de estourar links de servidores, fazer spam e etc (SIM, ISTO TUDO SEM QUE VOCÊ POSSA VER, POIS SEU ANTIVÍRUS AUTORIZOU NAQUELA VEZ QUE INSTALOU PROGRAMA_YXZ NO SEU PC).

Vou citar algo melhor. Há poucos anos um avião comercial caiu em detrimento da falta de comunicação ocasionada entre base de controle -> aeronave. Isto ocorreu por causa de um worm que causou overload (super utilizou os recursos do sistema operacional da aeronave) e a aeronave não recebou as informações detalhadas sobre falhas que ocorriam no voo. O Final nós já sabemos… Lamentável (falo sem hipocrisia).

 

Não citei todos os casos graves e muitos detalhes técnicos pois, do contrário passaria dias.


Vamos falar de empresas agora!

Lamento pelo texto parecer grosseiro, mas errar de maneira equivocada afim de “alimentar” seu ego ou puramente por “economias de vinho tinto e peru” não são tolerados para crackers.

Você, gestor/admin de um setor de TI, sabia que pessoas morreram em 1989 (companhia chamada Partnair), em um voo comercial em detrimento de 3 parafusos falsos que seguravam a peça superior final do avião? (sim, o leme) OBS: Eram 4 parafusos, somente um era de fato AUTÊNTICO!

3 parafusos pirateados fizeram pessoas (pais de famílias, donos de empreendimentos que sustentavam famílias, não só isso, houve até um conflito diplomático na intenção de localizar erros militares para culpar forças militares por um erro de BURRECES ECONÔMICAS?) morrerem.

Aonde você se encaixa?

Cuidado pois sua rede pode não ter tanta segurança como aparenta ter (nem falo de smartphones ferrados, notebooks de funcionários ferrados e etc, falo de pirataria MESMO), e o pior, os dados da sua empresa podem estar nas mãos de outros… Isso sim é complicado…

Reflita como pessoa (sim, no ponto quando falo para home users) e veja se sua instituição merece o fim do voo comercial de 1989. Pense no que faz para evitar perder suas preciosas férias com higienizações de rede, reestruturação de segurança e até mesmo de um efetivo novo (perder aqueles caras que programam muito, que possuem um know how elevado, imagine esses caras indo embora por causa de reestruturações?).

 

Continua em breve… (falar mais de exploits, metodologias, erros comuns… etc… etc…)

Feliz 2012.

 

 

Como verificar versões de CMS de maneira rápida e prática

Standard

Para verificar devemos baixar a seguinte ferramenta em um dos dois endereços abaixo:

root@appunix:˜#wget http://server.cmsversion.com/checktest.sh

ou

root@appunix:˜#wget http://www.libphp.net/checktest.sh

Em seguida fazer o seguinte

root@appunix:˜#chmod +x checktest.sh

root@appunix:˜#./checktest.sh -u logindeumacontanomeuserver

A saída deverá assemelhar-se com:

Latest Joomla: 1.5.23
Installed Version: 1.5.20
Installed Location: /home/logindeumacontanomeuserver/public_html/pathdocms/

Essa dica funciona para Joomla, WordPress, WHMCS e etc.

Lista de Alerta de Segurança e updates em distribuições LINUX

Standard

CentOS has updated curl

 

CentOS alert CESA-2011:0918 (curl)

From: Karanbir Singh <kbsingh@centos.org>
To: centos-announce@centos.org
Subject: [CentOS-announce] CESA-2011:0918 Moderate CentOS 5 i386 curl Update
Date: Wed, 6 Jul 2011 01:31:31 +0000
Message-ID: <20110706013131.GA19384@chakra.karan.org>

CentOS Errata and Security Advisory 2011:0918 Moderate Upstream details at : https://rhn.redhat.com/errata/RHSA-2011-0918.html The following updated files have been uploaded and are currently syncing to the mirrors: ( md5sum Filename ) i386: 72f34158cc331c812948fb5617672c22 curl-7.15.5-9.el5_6.3.i386.rpm 6ae160e7aa11ed7eae10f09d718bc284 curl-devel-7.15.5-9.el5_6.3.i386.rpm Source: 6b5efa31faad3772d556e01a9904875b curl-7.15.5-9.el5_6.3.src.rpm — Karanbir Singh CentOS Project { http://www.centos.org/ } irc: z00dax, #centos@irc.freenode.net _______________________________________________ CentOS-announce mailing list CentOS-announce@centos.org http://lists.centos.org/mailman/listinfo/centos-announce

 

Debian has updated bind9

Debian alert DSA-2272-1 (bind9)

From: Florian Weimer <fw@deneb.enyo.de>
To: debian-security-announce@lists.debian.org
Subject: [SECURITY] [DSA 2272-1] bind9 security update
Date: Tue, 05 Jul 2011 20:46:15 +0200
Message-ID: <8762ngwop4.fsf@mid.deneb.enyo.de>

—–BEGIN PGP SIGNED MESSAGE—– Hash: SHA1 – ————————————————————————- Debian Security Advisory DSA-2272-1 security@debian.org http://www.debian.org/security/ Florian Weimer July 05, 2011 http://www.debian.org/security/faq – ————————————————————————- Package : bind9 Vulnerability : denial of service Problem type : remote Debian-specific: no CVE ID : CVE-2011-2464 It was discovered that BIND, a DNS server, does not correctly process certain UPDATE requests, resulting in a server crash and a denial of service. This vulnerability affects BIND installations even if they do not actually use dynamic DNS updates. For the oldstable distribution (lenny), this problem has been fixed in version 1:9.6.ESV.R4+dfsg-0+lenny3. For the stable distribution (squeeze), this problem has been fixed in version 1:9.7.3.dfsg-1~squeeze3. The testing distribution (wheezy) and the unstable distribution (sid) will be fixed later. We recommend that you upgrade your bind9 packages. Further information about Debian Security Advisories, how to apply these updates to your system and frequently asked questions can be found at: http://www.debian.org/security/ Mailing list: debian-security-announce@lists.debian.org —–BEGIN PGP SIGNATURE—– Version: GnuPG v1.4.9 (GNU/Linux) iQEcBAEBAgAGBQJOE15NAAoJEL97/wQC1SS+XAEH/133aCRGwIHsAYR3OKT58a4d Id1OcLTsa1uhKXx8Y/7dNBgzf11HjiiL0ZerCOxNZqdpLIm4gugpQmL3XRjPhSK5 zisxyMN+31veDl5r+mey+hvZ7Ltel+lrTLxZeMQvDUf+RHJralO6YAovo7ozxeoC u9WZZW3ueVm7zEaSCqbEhcr+RQoNpLBkgqckTaPnMHbh8p+Jp8gl1//98CPbUo8R OfP59LUYmm1K7cIEX1HYz19Ll/XZ4pWIlahdl4dbdwlrzGXmO1PXt6RwG4uoHA2/ mOtylCJAct3i9DQ0gWYQpc+cFFRdOAKv04hgelwrNtPIXDil8hsOBtuGqklIpAM= =6PQL —–END PGP SIGNATURE—– — To UNSUBSCRIBE, email to debian-security-announce-REQUEST@lists.debian.org with a subject of “unsubscribe”. Trouble? Contact listmaster@lists.debian.org Archive: http://lists.debian.org/8762ngwop4.fsf@mid.deneb.enyo.de

 

openSUSE has updated mariadb

openSUSE alert openSUSE-SU-2011:0743-1 (MariaDB)

From: opensuse-security@opensuse.org
To: opensuse-updates@opensuse.org
Subject: openSUSE-SU-2011:0743-1: moderate: MariaDB
Date: Wed, 6 Jul 2011 15:08:15 +0200 (CEST)
Message-ID: <20110706130815.1947B3237A@maintenance.suse.de>

openSUSE Security Update: MariaDB ______________________________________________________________________________ Announcement ID: openSUSE-SU-2011:0743-1 Rating: moderate References: #676973 Cross-References: CVE-2010-3833 CVE-2010-3834 CVE-2010-3835 CVE-2010-3836 CVE-2010-3837 CVE-2010-3838 CVE-2010-3839 CVE-2010-3840 Affected Products: openSUSE 11.4 openSUSE 11.3 ______________________________________________________________________________ An update that fixes 8 vulnerabilities is now available. It includes one version update. Description: MariaDB was updated to version 5.1.55 to fix numerous bugs and security issues. Patch Instructions: To install this openSUSE Security Update use YaST online_update. Alternatively you can run the command listed for your product: – openSUSE 11.4: zypper in -t patch libmariadbclient16-4830 – openSUSE 11.3: zypper in -t patch libmariadbclient16-4830 To bring your system up-to-date, use “zypper patch”. Package List: – openSUSE 11.4 (i586 x86_64): libmariadbclient16-5.1.55-0.3.1 libmariadbclient_r16-5.1.55-0.3.1 mariadb-5.1.55-0.3.1 mariadb-bench-5.1.55-0.3.1 mariadb-client-5.1.55-0.3.1 mariadb-debug-5.1.55-0.3.1 mariadb-test-5.1.55-0.3.1 mariadb-tools-5.1.55-0.3.1 – openSUSE 11.3 (i586 x86_64) [New Version: 5.1.55]: libmariadbclient16-5.1.55-0.3.1 libmariadbclient_r16-5.1.55-0.3.1 mariadb-5.1.55-0.3.1 mariadb-bench-5.1.55-0.3.1 mariadb-client-5.1.55-0.3.1 mariadb-debug-5.1.55-0.3.1 mariadb-test-5.1.55-0.3.1 mariadb-tools-5.1.55-0.3.1 References: http://support.novell.com/security/cve/CVE-2010-3833.html http://support.novell.com/security/cve/CVE-2010-3834.html http://support.novell.com/security/cve/CVE-2010-3835.html http://support.novell.com/security/cve/CVE-2010-3836.html http://support.novell.com/security/cve/CVE-2010-3837.html http://support.novell.com/security/cve/CVE-2010-3838.html http://support.novell.com/security/cve/CVE-2010-3839.html http://support.novell.com/security/cve/CVE-2010-3840.html https://bugzilla.novell.com/676973

 

Red Hat has updated qemu-kvm

Red Hat alert RHSA-2011:0919-01 (qemu-kvm)

From: bugzilla@redhat.com
To: rhsa-announce@redhat.com, enterprise-watch-list@redhat.com
Subject: [RHSA-2011:0919-01] Important: qemu-kvm security and bug fix update
Date: Tue, 5 Jul 2011 18:12:56 +0000
Message-ID: <201107051812.p65ICuen010386@int-mx09.intmail.prod.int.phx2.redhat.com>

—–BEGIN PGP SIGNED MESSAGE—– Hash: SHA1 ===================================================================== Red Hat Security Advisory Synopsis: Important: qemu-kvm security and bug fix update Advisory ID: RHSA-2011:0919-01 Product: Red Hat Enterprise Linux Advisory URL: https://rhn.redhat.com/errata/RHSA-2011-0919.html Issue date: 2011-07-05 CVE Names: CVE-2011-2212 CVE-2011-2512 ===================================================================== 1. Summary: Updated qemu-kvm packages that fix two security issues and one bug are now available for Red Hat Enterprise Linux 6. The Red Hat Security Response Team has rated this update as having important security impact. Common Vulnerability Scoring System (CVSS) base scores, which give detailed severity ratings, are available for each vulnerability from the CVE links in the References section. 2. Relevant releases/architectures: Red Hat Enterprise Linux Desktop (v. 6) – x86_64 Red Hat Enterprise Linux HPC Node (v. 6) – x86_64 Red Hat Enterprise Linux Server (v. 6) – x86_64 Red Hat Enterprise Linux Workstation (v. 6) – x86_64 3. Description: KVM (Kernel-based Virtual Machine) is a full virtualization solution for Linux on AMD64 and Intel 64 systems. qemu-kvm is the user-space component for running virtual machines using KVM. It was found that the virtio subsystem in qemu-kvm did not properly validate virtqueue in and out requests from the guest. A privileged guest user could use this flaw to trigger a buffer overflow, allowing them to crash the guest (denial of service) or, possibly, escalate their privileges on the host. (CVE-2011-2212) It was found that the virtio_queue_notify() function in qemu-kvm did not perform sufficient input validation on the value later used as an index into the array of virtqueues. An unprivileged guest user could use this flaw to crash the guest (denial of service) or, possibly, escalate their privileges on the host. (CVE-2011-2512) Red Hat would like to thank Nelson Elhage for reporting CVE-2011-2212. This update also fixes the following bug: * A bug was found in the way vhost (in qemu-kvm) set up mappings with the host kernel’s vhost module. This could result in the host kernel’s vhost module not having a complete view of a guest system’s memory, if that guest had more than 4 GB of memory. Consequently, hot plugging a vhost-net network device and restarting the guest may have resulted in that device no longer working. (BZ#701771) All users of qemu-kvm should upgrade to these updated packages, which contain backported patches to resolve these issues. After installing this update, shut down all running virtual machines. Once all virtual machines have shut down, start them again for this update to take effect. 4. Solution: Before applying this update, make sure all previously-released errata relevant to your system have been applied. This update is available via the Red Hat Network. Details on how to use the Red Hat Network to apply this update are available at https://access.redhat.com/kb/docs/DOC-11259 5. Bugs fixed (http://bugzilla.redhat.com/): 713589 – CVE-2011-2212 qemu-kvm: virtqueue: too-large indirect descriptor buffer overflow 717399 – CVE-2011-2512 qemu-kvm: OOB memory access caused by negative vq notifies 6. Package List: Red Hat Enterprise Linux Desktop (v. 6): Source: ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Client/… x86_64: qemu-img-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-debuginfo-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-tools-0.12.1.2-2.160.el6_1.2.x86_64.rpm Red Hat Enterprise Linux HPC Node (v. 6): Source: ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Compute… x86_64: qemu-img-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-debuginfo-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-tools-0.12.1.2-2.160.el6_1.2.x86_64.rpm Red Hat Enterprise Linux Server (v. 6): Source: ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Server/… x86_64: qemu-img-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-debuginfo-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-tools-0.12.1.2-2.160.el6_1.2.x86_64.rpm Red Hat Enterprise Linux Workstation (v. 6): Source: ftp://ftp.redhat.com/pub/redhat/linux/enterprise/6Worksta… x86_64: qemu-img-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-debuginfo-0.12.1.2-2.160.el6_1.2.x86_64.rpm qemu-kvm-tools-0.12.1.2-2.160.el6_1.2.x86_64.rpm These packages are GPG signed by Red Hat for security. Our key and details on how to verify the signature are available from https://access.redhat.com/security/team/key/#package 7. References: https://www.redhat.com/security/data/cve/CVE-2011-2212.html https://www.redhat.com/security/data/cve/CVE-2011-2512.html https://access.redhat.com/security/updates/classification… 8. Contact: The Red Hat security contact is <secalert@redhat.com>. More contact details at https://access.redhat.com/security/team/contact/ Copyright 2011 Red Hat, Inc. —–BEGIN PGP SIGNATURE—– Version: GnuPG v1.4.4 (GNU/Linux) iD8DBQFOE1QMXlSAg2UNWIIRAiqyAJ0YZRdZLS/o8v6GpSJVdixf7dqXjQCgoCi6 FdDb471yututyx66yC/Sm1s= =MaoZ —–END PGP SIGNATURE—– — Enterprise-watch-list mailing list Enterprise-watch-list@redhat.com https://www.redhat.com/mailman/listinfo/enterprise-watch-…

 

Scientific Linux has updated curl and krb5-appl

Scientific Linux alert SL-krb5-20110705 (krb5-appl)

From: Troy Dawson <dawson@fnal.gov>
To: “scientific-linux-errata@fnal.gov” <scientific-linux-errata@fnal.gov>
Subject: Security ERRATA Important: krb5-appl on SL6.x i386/x86_64
Date: Tue, 05 Jul 2011 16:26:44 -0500
Message-ID: <4E138194.5070500@fnal.gov>

Synopsis: Important: krb5-appl security update Issue date: 2011-07-05 CVE Names: CVE-2011-1526 The krb5-appl packages provide Kerberos-aware telnet, ftp, rcp, rsh, and rlogin clients and servers. While these have been replaced by tools such as OpenSSH in most environments, they remain in use in others. It was found that gssftp, a Kerberos-aware FTP server, did not properly drop privileges. A remote FTP user could use this flaw to gain unauthorized read or write access to files that are owned by the root group. (CVE-2011-1526) SL 6.x SRPMS: krb5-appl-1.0.1-2.el6_1.1.src.rpm i386: krb5-appl-clients-1.0.1-2.el6_1.1.i686.rpm krb5-appl-servers-1.0.1-2.el6_1.1.i686.rpm x86_64: krb5-appl-clients-1.0.1-2.el6_1.1.x86_64.rpm krb5-appl-servers-1.0.1-2.el6_1.1.x86_64.rpm – Scientific Linux Development Team

Scientific Linux alert SL-krb5-20110705 (krb5-appl)

From: Troy Dawson <dawson@fnal.gov>
To: “scientific-linux-errata@fnal.gov” <scientific-linux-errata@fnal.gov>
Subject: Security ERRATA Important: krb5-appl on SL6.x i386/x86_64
Date: Tue, 05 Jul 2011 16:26:44 -0500
Message-ID: <4E138194.5070500@fnal.gov>

Synopsis: Important: krb5-appl security update Issue date: 2011-07-05 CVE Names: CVE-2011-1526 The krb5-appl packages provide Kerberos-aware telnet, ftp, rcp, rsh, and rlogin clients and servers. While these have been replaced by tools such as OpenSSH in most environments, they remain in use in others. It was found that gssftp, a Kerberos-aware FTP server, did not properly drop privileges. A remote FTP user could use this flaw to gain unauthorized read or write access to files that are owned by the root group. (CVE-2011-1526) SL 6.x SRPMS: krb5-appl-1.0.1-2.el6_1.1.src.rpm i386: krb5-appl-clients-1.0.1-2.el6_1.1.i686.rpm krb5-appl-servers-1.0.1-2.el6_1.1.i686.rpm x86_64: krb5-appl-clients-1.0.1-2.el6_1.1.x86_64.rpm krb5-appl-servers-1.0.1-2.el6_1.1.x86_64.rpm – Scientific Linux Development Team

 

Ubuntu has updated linux-fsl-imx51 (many vulnerabilities dating back to 2010), linux-mvl-dove (multiple vulnerabilities), and bind (denial of service).

Ubuntu alert USN-1164-1 (linux-fsl-imx51)

From: Marc Deslauriers <marc.deslauriers@canonical.com>
To: ubuntu-security-announce@lists.ubuntu.com
Subject: [USN-1164-1] Linux kernel vulnerabilities (i.MX51)
Date: Wed, 06 Jul 2011 10:36:13 -0400
Message-ID: <1309962973.3937.27.camel@mdlinux>

========================================================================== Ubuntu Security Notice USN-1164-1 July 06, 2011 linux-fsl-imx51 vulnerabilities ========================================================================== A security issue affects these releases of Ubuntu and its derivatives: – Ubuntu 10.04 LTS Summary: Multiple kernel flaws have been fixed. Software Description: – linux-fsl-imx51: Linux kernel for IMX51 Details: Thomas Pollet discovered that the RDS network protocol did not check certain iovec buffers. A local attacker could exploit this to crash the system or possibly execute arbitrary code as the root user. (CVE-2010-3865) Dan Rosenberg discovered that the CAN protocol on 64bit systems did not correctly calculate the size of certain buffers. A local attacker could exploit this to crash the system or possibly execute arbitrary code as the root user. (CVE-2010-3874) Vasiliy Kulikov discovered that the Linux kernel X.25 implementation did not correctly clear kernel memory. A local attacker could exploit this to read kernel stack memory, leading to a loss of privacy. (CVE-2010-3875) Vasiliy Kulikov discovered that the Linux kernel sockets implementation did not properly initialize certain structures. A local attacker could exploit this to read kernel stack memory, leading to a loss of privacy. (CVE-2010-3876) Vasiliy Kulikov discovered that the TIPC interface did not correctly initialize certain structures. A local attacker could exploit this to read kernel stack memory, leading to a loss of privacy. (CVE-2010-3877) Nelson Elhage discovered that the Linux kernel IPv4 implementation did not properly audit certain bytecodes in netlink messages. A local attacker could exploit this to cause the kernel to hang, leading to a denial of service. (CVE-2010-3880) Dan Rosenberg discovered that the RME Hammerfall DSP audio interface driver did not correctly clear kernel memory. A local attacker could exploit this to read kernel stack memory, leading to a loss of privacy. (CVE-2010-4080, CVE-2010-4081) Dan Rosenberg discovered that the VIA video driver did not correctly clear kernel memory. A local attacker could exploit this to read kernel stack memory, leading to a loss of privacy. (CVE-2010-4082) Dan Rosenberg discovered that the semctl syscall did not correctly clear kernel memory. A local attacker could exploit this to read kernel stack memory, leading to a loss of privacy. (CVE-2010-4083) James Bottomley discovered that the ICP vortex storage array controller driver did not validate certain sizes. A local attacker on a 64bit system could exploit this to crash the kernel, leading to a denial of service. (CVE-2010-4157) Dan Rosenberg discovered multiple flaws in the X.25 facilities parsing. If a system was using X.25, a remote attacker could exploit this to crash the system, leading to a denial of service. (CVE-2010-4164) It was discovered that multithreaded exec did not handle CPU timers correctly. A local attacker could exploit this to crash the system, leading to a denial of service. (CVE-2010-4248) Nelson Elhage discovered that the kernel did not correctly handle process cleanup after triggering a recoverable kernel bug. If a local attacker were able to trigger certain kinds of kernel bugs, they could create a specially crafted process to gain root privileges. (CVE-2010-4258) Nelson Elhage discovered that Econet did not correctly handle AUN packets over UDP. A local attacker could send specially crafted traffic to crash the system, leading to a denial of service. (CVE-2010-4342) Tavis Ormandy discovered that the install_special_mapping function could bypass the mmap_min_addr restriction. A local attacker could exploit this to mmap 4096 bytes below the mmap_min_addr area, possibly improving the chances of performing NULL pointer dereference attacks. (CVE-2010-4346) Dan Rosenberg discovered that the OSS subsystem did not handle name termination correctly. A local attacker could exploit this crash the system or gain root privileges. (CVE-2010-4527) Dan Rosenberg discovered that IRDA did not correctly check the size of buffers. On non-x86 systems, a local attacker could exploit this to read kernel heap memory, leading to a loss of privacy. (CVE-2010-4529) Dan Rosenburg discovered that the CAN subsystem leaked kernel addresses into the /proc filesystem. A local attacker could use this to increase the chances of a successful memory corruption exploit. (CVE-2010-4565) Kees Cook discovered that some ethtool functions did not correctly clear heap memory. A local attacker with CAP_NET_ADMIN privileges could exploit this to read portions of kernel heap memory, leading to a loss of privacy. (CVE-2010-4655) Kees Cook discovered that the IOWarrior USB device driver did not correctly check certain size fields. A local attacker with physical access could plug in a specially crafted USB device to crash the system or potentially gain root privileges. (CVE-2010-4656) Goldwyn Rodrigues discovered that the OCFS2 filesystem did not correctly clear memory when writing certain file holes. A local attacker could exploit this to read uninitialized data from the disk, leading to a loss of privacy. (CVE-2011-0463) Dan Carpenter discovered that the TTPCI DVB driver did not check certain values during an ioctl. If the dvb-ttpci module was loaded, a local attacker could exploit this to crash the system, leading to a denial of service, or possibly gain root privileges. (CVE-2011-0521) Jens Kuehnel discovered that the InfiniBand driver contained a race condition. On systems using InfiniBand, a local attacker could send specially crafted requests to crash the system, leading to a denial of service. (CVE-2011-0695) Dan Rosenberg discovered that XFS did not correctly initialize memory. A local attacker could make crafted ioctl calls to leak portions of kernel stack memory, leading to a loss of privacy. (CVE-2011-0711) Rafael Dominguez Vega discovered that the caiaq Native Instruments USB driver did not correctly validate string lengths. A local attacker with physical access could plug in a specially crafted USB device to crash the system or potentially gain root privileges. (CVE-2011-0712) Timo Warns discovered that the LDM disk partition handling code did not correctly handle certain values. By inserting a specially crafted disk device, a local attacker could exploit this to gain root privileges. (CVE-2011-1017) Julien Tinnes discovered that the kernel did not correctly validate the signal structure from tkill(). A local attacker could exploit this to send signals to arbitrary threads, possibly bypassing expected restrictions. (CVE-2011-1182) Dan Rosenberg discovered that MPT devices did not correctly validate certain values in ioctl calls. If these drivers were loaded, a local attacker could exploit this to read arbitrary kernel memory, leading to a loss of privacy. (CVE-2011-1494, CVE-2011-1495) Tavis Ormandy discovered that the pidmap function did not correctly handle large requests. A local attacker could exploit this to crash the system, leading to a denial of service. (CVE-2011-1593) Vasiliy Kulikov discovered that the AGP driver did not check certain ioctl values. A local attacker with access to the video subsystem could exploit this to crash the system, leading to a denial of service, or possibly gain root privileges. (CVE-2011-1745, CVE-2011-2022) Vasiliy Kulikov discovered that the AGP driver did not check the size of certain memory allocations. A local attacker with access to the video subsystem could exploit this to run the system out of memory, leading to a denial of service. (CVE-2011-1746, CVE-2011-1747) Oliver Hartkopp and Dave Jones discovered that the CAN network driver did not correctly validate certain socket structures. If this driver was loaded, a local attacker could crash the system, leading to a denial of service. (CVE-2011-1748) Update instructions: The problem can be corrected by updating your system to the following package versions: Ubuntu 10.04 LTS: linux-image-2.6.31-609-imx51 2.6.31-609.26 After a standard system update you need to reboot your computer to make all the necessary changes. ATTENTION: Due to an unavoidable A
BI change the kernel updates have been given a new version number, which requires you to recompile and reinstall all third party kernel modules you might have installed. If you use linux-restricted-modules, you have to update that package as well to get modules which work with the new kernel version. Unless you manually uninstalled the standard kernel metapackages (e.g. linux-generic, linux-server, linux-powerpc), a standard system upgrade will automatically perform this as well. References: http://www.ubuntu.com/usn/usn-1164-1 CVE-2010-3865, CVE-2010-3874, CVE-2010-3875, CVE-2010-3876, CVE-2010-3877, CVE-2010-3880, CVE-2010-4080, CVE-2010-4081, CVE-2010-4082, CVE-2010-4083, CVE-2010-4157, CVE-2010-4164, CVE-2010-4248, CVE-2010-4258, CVE-2010-4342, CVE-2010-4346, CVE-2010-4527, CVE-2010-4529, CVE-2010-4565, CVE-2010-4655, CVE-2010-4656, CVE-2011-0463, CVE-2011-0521, CVE-2011-0695, CVE-2011-0711, CVE-2011-0712, CVE-2011-1017, CVE-2011-1182, CVE-2011-1494, CVE-2011-1495, CVE-2011-1593, CVE-2011-1745, CVE-2011-1746, CVE-2011-1747, CVE-2011-1748, CVE-2011-2022 Package Information: https://launchpad.net/ubuntu/+source/linux-fsl-imx51/2.6…. — ubuntu-security-announce mailing list ubuntu-security-announce@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-security…

Ubuntu alert USN-1162-1 (linux-mvl-dove)

From: Kees Cook <kees@ubuntu.com>
To: ubuntu-security-announce@lists.ubuntu.com
Subject: [USN-1162-1] Linux kernel vulnerabilities (Marvell Dove)
Date: Wed, 29 Jun 2011 06:18:43 -0700
Message-ID: <20110629131843.GA32221@outflux.net>

========================================================================== Ubuntu Security Notice USN-1162-1 June 29, 2011 linux-mvl-dove vulnerabilities ========================================================================== A security issue affects these releases of Ubuntu and its derivatives: – Ubuntu 10.04 LTS Summary: Multiple kernel flaws have been fixed. Software Description: – linux-mvl-dove: Linux kernel for DOVE Details: Brad Spengler discovered that the kernel did not correctly account for userspace memory allocations during exec() calls. A local attacker could exploit this to consume all system memory, leading to a denial of service. (CVE-2010-4243) Alexander Duyck discovered that the Intel Gigabit Ethernet driver did not correctly handle certain configurations. If such a device was configured without VLANs, a remote attacker could crash the system, leading to a denial of service. (CVE-2010-4263) Nelson Elhage discovered that Econet did not correctly handle AUN packets over UDP. A local attacker could send specially crafted traffic to crash the system, leading to a denial of service. (CVE-2010-4342) Dan Rosenberg discovered that IRDA did not correctly check the size of buffers. On non-x86 systems, a local attacker could exploit this to read kernel heap memory, leading to a loss of privacy. (CVE-2010-4529) Dan Rosenburg discovered that the CAN subsystem leaked kernel addresses into the /proc filesystem. A local attacker could use this to increase the chances of a successful memory corruption exploit. (CVE-2010-4565) Goldwyn Rodrigues discovered that the OCFS2 filesystem did not correctly clear memory when writing certain file holes. A local attacker could exploit this to read uninitialized data from the disk, leading to a loss of privacy. (CVE-2011-0463) Jens Kuehnel discovered that the InfiniBand driver contained a race condition. On systems using InfiniBand, a local attacker could send specially crafted requests to crash the system, leading to a denial of service. (CVE-2011-0695) Dan Rosenberg discovered that XFS did not correctly initialize memory. A local attacker could make crafted ioctl calls to leak portions of kernel stack memory, leading to a loss of privacy. (CVE-2011-0711) Kees Cook reported that /proc/pid/stat did not correctly filter certain memory locations. A local attacker could determine the memory layout of processes in an attempt to increase the chances of a successful memory corruption exploit. (CVE-2011-0726) Matthiew Herrb discovered that the drm modeset interface did not correctly handle a signed comparison. A local attacker could exploit this to crash the system or possibly gain root privileges. (CVE-2011-1013) Marek Ol?ák discovered that the Radeon GPU drivers did not correctly validate certain registers. On systems with specific hardware, a local attacker could exploit this to write to arbitrary video memory. (CVE-2011-1016) Timo Warns discovered that the LDM disk partition handling code did not correctly handle certain values. By inserting a specially crafted disk device, a local attacker could exploit this to gain root privileges. (CVE-2011-1017) Vasiliy Kulikov discovered that the CAP_SYS_MODULE capability was not needed to load kernel modules. A local attacker with the CAP_NET_ADMIN capability could load existing kernel modules, possibly increasing the attack surface available on the system. (CVE-2011-1019) Neil Horman discovered that NFSv4 did not correctly handle certain orders of operation with ACL data. A remote attacker with access to an NFSv4 mount could exploit this to crash the system, leading to a denial of service. (CVE-2011-1090) Timo Warns discovered that OSF partition parsing routines did not correctly clear memory. A local attacker with physical access could plug in a specially crafted block device to read kernel memory, leading to a loss of privacy. (CVE-2011-1163) Julien Tinnes discovered that the kernel did not correctly validate the signal structure from tkill(). A local attacker could exploit this to send signals to arbitrary threads, possibly bypassing expected restrictions. (CVE-2011-1182) Dan Rosenberg discovered that MPT devices did not correctly validate certain values in ioctl calls. If these drivers were loaded, a local attacker could exploit this to read arbitrary kernel memory, leading to a loss of privacy. (CVE-2011-1494, CVE-2011-1495) Tavis Ormandy discovered that the pidmap function did not correctly handle large requests. A local attacker could exploit this to crash the system, leading to a denial of service. (CVE-2011-1593) Oliver Hartkopp and Dave Jones discovered that the CAN network driver did not correctly validate certain socket structures. If this driver was loaded, a local attacker could crash the system, leading to a denial of service. (CVE-2011-1598, CVE-2011-1748) Vasiliy Kulikov discovered that the AGP driver did not check certain ioctl values. A local attacker with access to the video subsystem could exploit this to crash the system, leading to a denial of service, or possibly gain root privileges. (CVE-2011-1745, CVE-2011-2022) Vasiliy Kulikov discovered that the AGP driver did not check the size of certain memory allocations. A local attacker with access to the video subsystem could exploit this to run the system out of memory, leading to a denial of service. (CVE-2011-1746, CVE-2011-1747) Update instructions: The problem can be corrected by updating your system to the following package versions: Ubuntu 10.04 LTS: linux-image-2.6.32-217-dove 2.6.32-217.34 After a standard system update you need to reboot your computer to make all the necessary changes. ATTENTION: Due to an unavoidable ABI change the kernel updates have been given a new version number, which requires you to recompile and reinstall all third party kernel modules you might have installed. If you use linux-restricted-modules, you have to update that package as well to get modules which work with the new kernel version. Unless you manually uninstalled the standard kernel metapackages (e.g. linux-generic, linux-server, linux-powerpc), a standard system upgrade will automatically perform this as well. References: http://www.ubuntu.com/usn/usn-1162-1 CVE-2010-4243, CVE-2010-4263, CVE-2010-4342, CVE-2010-4529, CVE-2010-4565, CVE-2011-0463, CVE-2011-0695, CVE-2011-0711, CVE-2011-0726, CVE-2011-1013, CVE-2011-1016, CVE-2011-1017, CVE-2011-1019, CVE-2011-1090, CVE-2011-1163, CVE-2011-1182, CVE-2011-1494, CVE-2011-1495, CVE-2011-1593, CVE-2011-1598, CVE-2011-1745, CVE-2011-1746, CVE-2011-1747, CVE-2011-1748, CVE-2011-2022 Package Information: https://launchpad.net/ubuntu/+source/linux-mvl-dove/2.6.3… — ubuntu-security-announce mailing list ubuntu-security-announce@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-security…

 

Ubuntu alert USN-1163-1 (bind9)

From: Marc Deslauriers <marc.deslauriers@canonical.com>
To: ubuntu-security-announce@lists.ubuntu.com
Subject: [USN-1163-1] Bind vulnerability
Date: Tue, 05 Jul 2011 15:40:07 -0400
Message-ID: <1309894807.2763.101.camel@mdlinux>

========================================================================== Ubuntu Security Notice USN-1163-1 July 05, 2011 bind9 vulnerability ========================================================================== A security issue affects these releases of Ubuntu and its derivatives: – Ubuntu 11.04 – Ubuntu 10.10 – Ubuntu 10.04 LTS – Ubuntu 8.04 LTS Summary: An attacker could send crafted input to Bind and cause it to crash. Software Description: – bind9: Internet Domain Name Server Details: It was discovered that Bind incorrectly handled certain specially crafted packets. A remote attacker could use this flaw to cause Bind to stop responding, resulting in a denial of service. Update instructions: The problem can be corrected by updating your system to the following package versions: Ubuntu 11.04: libdns69 1:9.7.3.dfsg-1ubuntu2.2 Ubuntu 10.10: libdns66 1:9.7.1.dfsg.P2-2ubuntu0.4 Ubuntu 10.04 LTS: libdns64 1:9.7.0.dfsg.P1-1ubuntu0.3 Ubuntu 8.04 LTS: libdns36 1:9.4.2.dfsg.P2-2ubuntu0.8 In general, a standard system update will make all the necessary changes. References: http://www.ubuntu.com/usn/usn-1163-1 CVE-2011-2464 Package Information: https://launchpad.net/ubuntu/+source/bind9/1:9.7.3.dfsg-1… https://launchpad.net/ubuntu/+source/bind9/1:9.7.1.dfsg.P… https://launchpad.net/ubuntu/+source/bind9/1:9.7.0.dfsg.P… https://launchpad.net/ubuntu/+source/bind9/1:9.4.2.dfsg.P… — ubuntu-security-announce mailing list ubuntu-security-announce@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-security…

 

Fonte: http://lwn.net/

Apple Lança Update de Segurança para Mac OS X Snow Leopard

Standard

Update

A Apple lançou uma atualização de segurança para o seu Mac OS X 10.6 Snow Leopard, com o intuito de resolver as últimas “Cagadas” do Mac Defender (recente Malware descoberto pra Mac) e suas variantes conhecidas “Mac Security”, “Mac Protector” e “MacGuard”. Caso o usuário já esteja infectado pela “Praga”o instalador procurará pela mesma e a eliminará.

Curiosamente, a atualização de segurança também faz com que o sistema para verificar se há atualizações diárias para a definição da lista de arquivos de quarentena malware.Os usuários do Mac OS X pode atualizar para a versão mais recente através da função Software Update(no painel superior). Todos os usuários são aconselhados a atualizar o mais rapidamente possível.

Mais informaçoes sobre esse update de segurança de nossa querida de Cupertino, vá até AQUI. Voccê encontrará notas dessa atualização de segurança.

Abraço… Façam o Update (é um mal Necessário)

[Via]

Kaspersky: Android é o Novo Windows

Standard

As pragas tecnológicas estão se propagando de uma maneira tão veloz, que a situação da segurança no Android já se assemelha cada vez mais com a situação vivenciada pelos usuários no Window$. Esta é a opinião clara dos especialistas em segurança da Kaspersky, em seu relatório de malware divulgado para o primeiro trimestre de 2011. Os especialistas também se expandem em comentar que já existe uma “infinidade de dispositivos Android” com o software desatualizado, e que este software pode conter várias vulnerabilidades não corrigidas.

A política de atualização de fabricantes que estão negligenciando esse quadro é criticada severamente (e com muita razão), porque esses mesmos fabricantes podem vender uma quantidade imensa de aparelhos com Android no mercado, e deixá-los vulneráveis ​​e com versões antigas do sistema em questão. O foco é a comercialização, é o lucro, deixando assim, a segurança como fator irrelevante.

Além disso, pode haver pouco ou absolutamente nenhum interesse em apoiar modelos obsoletos de forma emergencial. “É possível discutir seriamente a segurança em situações como essas?” Eis a importante questão que consta no relatório. A partir de informações do próprio Google, mais de 95 por cento dos aparelhos que vem com o sistema Android não está executando a versão mais recente da plataforma móvel.

Usuários Acham que Estão Isentos de Infecção por Malware

A semelhança próxima com o Windows, é de que os usuários tendem a ignorar os alertas de segurança quando qualquer aplicativo for instalado ou iniciado pela primeira vez, dando-lhes privilégios como o SMS (através de rubber-stamping approval), sem que levem em consideração as suas reais e sérias conseqüências. Os dispositivos de maior risco foram, segundo relatou a Kaspersky, os que tinham sido desbloqueados (ou “rooted”) para dar ao usuário o acesso de nível pleno de administrador no sistema.

A Kaspersky também aponta que o malware móvel está se movendo com a pior das intenções de comandar e controlar redes, que ele acredita que levarão ao surgimento de botnets móveis. Toda essa situação exige uma ampla reflexão sobre o crescimento e o desenvolvimento do malware do Windows. Finalmente, a especialistas notam que, embora o Google tenha a capacidade de remover de forma remota os aplicativos “desonestos”, os sistemas de controle podem ser ignorados.

Diante dessas análises minuciosas e importantes conclusões, a Kaspersky acredita que a quantidade de malware móvel novo dobrará, passando de 500 no ano passado para pouco mais de mil neste ano de 2011, números que tornam-se alarmantes para a área de segurança.

Embora a taxa de crescimento seja bastante rápida, ela está longe dos níveis incontroláveis ​​apresentados pelo Windows, mas ainda representa uma tendência preocupante como os dispositivos que são propensos a se tornar mobile wallets em um futuro próximo, e que já possuem uma grande quantidade de informações pessoais e profissionais. O importante é não subestimar os riscos e ter o cuidado máximo com as informações armazenadas em tais dispositivos.

Top 20 “Pragas” para Android na Internet

Ranking Name Percentage of all attacks (%)*
1 Blocked 66.16%
2 Trojan,Script,Iframer 20.43%
3 Exploit,Script,Generic 14.68%
4 Trojan,Win32,Generic 9.59%
5 Trojan,Script,Generic 8.91%
6 Trojan-Downloader,Script,Generic 8.12%
7 AdWare,Win32,HotBar,dh 3.40%
8 AdWare,Win32,FunWeb,gq 3.26%
9 Trojan,HTML,Iframe,dl 2.16%
10 Exploit,JS,Pdfka,ddt 1.82%
11 Exploit,HTML,CVE-2010-1885,ad 1.73%
12 Hoax,Win32,ArchSMS,pxm 1.59%
13 Trojan,JS,Popupper,aw 1.57%
14 Hoax,Win32,ArchSMS,heur 1.57%
15 Trojan-Downloader,Win32,Generic 1.56%
16 Trojan-Downloader,Java,OpenConnection,cx 1.55%
17 Trojan-Downloader,Java,OpenConnection,cg 1.33%
18 Exploit,HTML,CVE-2010-1885,aa 1.33%
19 Trojan-Downloader,HTML,Agent,sl 1.24%
20 Trojan-Downloader,Java,OpenConnection,cf 1.15%

 

Paises mais afetados

estatistica

 

 

De um ponto de vista pessoal, tenho em mente que o que é mais usado também torna-se mais visado, visto que surgem mais bugs e arestas se pensado na questão SEGURANÇA…. Nada mais normal aparecer vulnerabilidades em um Sistema Operacional que está a caminho do “Monopólio” do mercado Mobile. Não sou Xiita ao ponto de falar que por ser Unix-Based é um sistema 100% seguro, acredito muito no sistema de permissões dos sistemas Unix-Based mas nada é inquebrável ou totalmente seguro. Tenho plena certeza que a Google aprenderá com o tempo e principalemente com os erros.

[via] [Trandução]

Aumentando/melhorando a segurança do seu SSH

Standard

Olá galera.

Hoje vou mostrar a  vocês uma dica simples e essencial à segurança de seu servidor PROXY/FIREWALL.
Uma coisa que senti falta no inÌcio de minha vida junto ao software livre(mais especificamente LINUX), foram tutoriais mais claros e com menos furulas possíveis.

Como disse acima, é uma questão de segurança alterar a porta usada para acesso via SSH, evitasse problemas com Port-scanners,scripts brute-force com destino a seu servidor, dentre outros… O ideal mesmo seria que nosso servidor não pudesse ser acesso remotamente, mas como em estamos vivendo/trabalhando em um mundo tão corrido/competitivo, não podemos nos dar ao luxo de atender todos clientes localmente (até mesmo prq pode-se ter clients com servidores no exterior :P).Podemos(devemos) alterar também para que no servidor SSH recuse conexões pelo usuário ROOT(super-usuário).

Quando instalamos o open-sshserver o mesmo gera seus arquivos de configuração dentro da pasta /etc/ssh, em nossas dicas teremos que alterar o arquivo sshd_config. São duas dicas simples e que podem evitar muita dor de cabeça para conosco.

No terminal digite como ROOT (evita-se ter que digitar senha toda hora)

root@appunix:˜# vi /etc/ssh/sshd_config (Use o editor de textos de sua preferência, preferimos o VI prq está presente em TODAS distribuições LINUX,BSD,UNIX)

Esse arquivo contem uma linha mais ou menos assim:

# What ports, IPs and protocols we listen for
#Port 22

Descomente a linha onde está escrito #Port 22 (Descomentar quer dizer excluir a tralha(#) no início da linha)

Agora é só alterar o valor de 22 para alguma porta de sua preferência (dê preferência a portas acima de 3000, sendo que o máximo é 65535)

Para alterar o parâmetro que indica ao SSH-SEVER que ele deve recusar conexões pelo usuário ROOT (super-usuário) prosure pelas linhas

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

Em PermitRootLogin altere yes por no e acrescente a linha “AllowUsers doooguinha” (sem aspas)

Lembrando que você deve substituir doooguinha pelo usuário que deseja permitir acesso via SSH.Vale um lembrete, ao usuário que daremos permissão a acessar o SSH, dê somente permissão para acessar o SSH (+nada), caso seja você ou outro usuário que realmente tenha previlégios para alterar configurações ou outras funções você pode virar ROOT após ter logado na sessão.

Após terminarem as modificações no sshd_config salvem o arquivo ( no VI “Esc+:wq!”)

Após o arquivo salvo temos que reiniciar o daemon, no ubuntu/dibian-like:

root@appunix:˜# /etc/init.d/ssh restart ou reload

Em distribuições como RedHat,Centos,Fedora,Slack,Mandriva:

root@appunix:˜# service ssh restart ou reload

Após isso você já tem um servidor relativamente um pouco + seguro no que tange ao seu SSH.

Galera, são dicas simples mas que podem evitar muita dor de cabeça.

Obrigado a todos pela visita.:D


BLOG: Vulnerabilidade compromete uso de FTP em servidores Unix-Like

Standard

Uma notícia muito importante foi divulgada recentemente.  A biblioteca Libc/Glob é utilizada neste exploit, o qual o site http://securityreason.com/securityalert/7822 especifica detalhadamente. Segundo a publicação,  a vulnerabilidade já atingiu empresas de grande porte como até mesmo Adobe. Confira abaixo um trecho:

Author: Maksymilian Arciemowicz
http://netbsd.org/donations/
http://securityreason.com/
http://cxib.net/
Date:
– – Dis.: 06.11.2009
– – Pub.: 07.10.2010

CVE: CVE-2010-2632

Affected Software (verified):
– – OpenBSD 4.7
– – NetBSD 5.0.2
– – FreeBSD 7.3/8.1
– – Oracle Sun Solaris 10
– – GNU Libc (glibc)

Affected Ftp Servers:
– – ftp.openbsd.org (verified 02.07.2010: “connection refused” and ban)
– – ftp.netbsd.org (verified 02.07.2010: “connection limit of 160 reached”
and ban)
– – ftp.freebsd.org
– – ftp.adobe.com
– – ftp.hp.com
– – ftp.sun.com
– – more more and more

Affected Vendors (not verified):
– – Apple
– – Microsoft Interix
– – HP
– – more more more

O anúncio principal encontra-se em http://securityreason.com/achievement_securityalert/89

Iremos acompanhar esta thread de perto.
Reportaremos caso possamos descobrir algo a mais sobre esta impactante notícia.

Regras bacanas do Mod_Security 2 (apache 2)

Standard

Olá ALL,

Uma coisa comum para combater uso indevido de cgi é impedir o uso de cgi (perl) em um servidor de hospedagem de sites compartilhada, mas nem sempre dá para impedir o uso.
Então uma das formas de contornar o uso indevido é aplicar regras do mod_security do apache afim de que possamos filtrar o máximo de requisições e ainda por cima ganhar com segurança.
Antemão quero salientar que uma das pragas mais comuns da web é o DM.CGI, esse carinha faz um estrago grandinho com spam, podendo levar um servidor para as mais conceituadas rbls. Como resolver?

No WHM, como root, siga para o último menu (PLUGINS) e procure pelo Mod Security.
CLique nele, dentro dele clique em Edit Configuration.
Dentro dela adicione as seguintes linhas:

SecRule REQUEST_URI “dm.cgi”
SecRule REQUEST_URI “dark.cgi”
SecRule REQUEST_URI “udp.pl”
SecRule REQUEST_BODY|REQUEST_URI “\.cgi\?m\=state”
SecRule REQUEST_BODY|REQUEST_URI “cgi\?m\=snd”
SecRule REQUEST_BODY|REQUEST_URI “cgi\?m\=icfg”
SecRule REQUEST_BODY|REQUEST_URI “\.pl\?m\=state”
SecRule REQUEST_BODY|REQUEST_URI “pl\?m\=snd”
SecRule REQUEST_BODY|REQUEST_URI “pl\?m\=icfg”

Isto irá salvar sua pele!

fonte: http://www.forumcpanel.com.br/index.php?showtopic=8608&hl=secrule

Lista de funções para desabilitar em um ambiente CPANEL de Hospedagem de Sites compartilhada

Standard


Bem, se você quer mais segurança em um ambiente compartilhado você precisará de ajustar seu php.ini global (/usr/local/lib/php.ini) em seu servidor de hospedagem compartilhada afim de prevenir ataques usando recursos avançados do php.

Como faremos isto?

Procure pela linha disable_functions =

e depois do ‘=’ aplique as seguintes funções:

dl, system, exec, shell_exec, chown, chgrp, escapeshellcmd, putenv, popen, pclose, passthru, proc_open, proc_get_status, proc_nice, proc_close, proc_terminate, posix_ctermid, posix_get_last_error, posix_getcwd, posix_getegid, posix_geteuid, posix_getgid, posix_getgrgid, posix_getgrnam, posix_getgroups, posix_getlogin, posix_getpgid, posix_getpgrp, posix_getpid, posix_getppid, posix_getpwnam, posix_getpwuid, posix_getrlimit, posix_getsid, posix_getuid, posix_isatty, posix_kill, posix_mkfifo, posix_setegid, posix_seteuid, posix_setgid, posix_setpgid, posix_setsid, posix_setuid, posix_strerror, posix_times, posix_ttyname, posix_uname

Talvez você precisará do shell_exec para o caso do Fantástico Deluxe.
Avalie se vale a pena deixar esta função ativa e prossiga 😀

Como fazer o seu script php solicitar autenticação usando header

Standard

Uma das formas mais legais que se tem de fazer autenticação de diretório com caixa de diálogo no browser é usando a função header do php e mandando brasa!

Um exemplo prático para você:

function checker($user, $pw) {
if( ($user == “nome_do_login”) && ($pw == “password”) ) {
return true;
} else {
return false;
}
}

if( !(checker($_SERVER[‘PHP_AUTH_USER’], $_SERVER[‘PHP_AUTH_PW’])) ) {
header(‘WWW-Authenticate: Basic realm=”Autentique-se”‘);
header(‘HTTP/1.0 401 Unauthorized’);
echo “Dados incorretos.”;
exit;
}

É isso!

How to install mod evasive, como instalar o mod evasive

Standard

Para instalar o mod evasive em seu cpanel use:

wget http://www.zdziarski.com/projects/mo…_1.10.1.tar.gz
tar -xzvf mod_evasive_1.10.1.tar.gz
cd mod_evasive_1.10.1
/usr/local/apache/bin/apxs -i -a -c mod_evasive20.c
/usr/local/apache/bin/apachectl restart

Após entre no conf do apache e edite o mesmo:

/usr/local/apache/conf/httpd.conf

<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>

Após reinicie o apache:

service httpd restart

Plesk 8 e Plesk 9 Como modificar páginas de erros personalizadas how to change customized error pages on plesk

Standard

No meu blog littleoak eu fiz um how para isto:

http://littleoak.wordpress.com/2009/03/24/plesk-8-e-plesk-9-como-modificar-paginas-de-erros-personalizadas-how-to-change-customized-error-pages-on-plesk/

cannot restore segment prot after reloc: Permission denied

Standard

Nada de pânico, sem dúvidas isso ocorreu em seu sistema CentOs (ou derivado da linha Red Hat) e você não sabe o que fazer. Esfria a cabeça, para sanar o erro
cannot restore segment prot after reloc: Permission denied

basta desabilitar o SELINUX (sistema de defesa padrão da linha Red Hat) assim:

/usr/sbin/setenforce 0

entre no arquivo de configuração e mude de enforce para disabled, o arquivo fica em:
/etc/selinux/config

Após a mudança reinicie o server com o comando:

shutdown -r now

Após restart, use o comando sestatus, deverá receber algo como:

SELinux status: disabled

Depois disso tudo ficará 100%.

Abraços.

Evento: II encontro PHP-PB

Standard

O que é?

O segundo encontro do grupo de desenvolvedores PHP da Paraíba tem como objetivo reunir os membros do grupo, estudantes e profissionais da área de TI para troca de conhecimentos na tecnologia PHP e relacionadas. O encontro contará com palestras e momentos de networking entre os participantes.

Se você não participou do primeiro enconto, veja como foi:

* Fotos
* Apresentações

Quando?

Dia 07 de Março de 2009, a partir das 8 da manhã na Unipê, localizada na BR-230, bairro Água Fria em João Pessoa.
Unipê

Quer patrocinar?

Faça já o download do nosso plano de patrocínio e entre em contato conosco!

Inscrições

A participação no evento é gratuita, porém é necessária a prévia inscrição e a doação de 1Kg de alimento não perecível no dia do evento.

A doação será repassada à Casa da Criança com Câncer, instituição filantrópica que dá apoio aos pacientes e familiares vindos do interior em busca de tratamento no Hospital do Câncer Napoleão Laureano.

Os membros inscritos e presentes no dia do evento concorrerão a diversos brindes como livros da editora O’Reilly, camisetas, um elePHPant de pelúcia e muito mais!

Já contamos com 378 inscritos no total, sendo 1 só nas últimas 24 horas!

Inscreva-se AQUI!

Fonte: http://www.littleoak.com.br/2009/02/22/ii-encontro-php-pb/

Tutorial de segurança em aplicações PHP (parte 1)

Standard

Estou anotando algumas dicas para aumentar a segurança em aplicações php (linguagem a qual programo).
Abaixo irei colocar algumas dicas sobre o que tenho aprendido, mas infelizmente de maneira resumida, definida como parte 1:

-alertas de erro -> Desabilitado (coisas como error_reporting(E_ALL);) – isto só pode ocorrer em um sistema no momento de testing.
-register_globals -> Desabilitado
-permissão ->dar o mínimo de privilégios possível no sistema, a nível
de bd e etc.
-variáveis ->setar vazios antes de atribuir strings.

Ex:

<?php

$busca = ”;

if (isset($_GET[‘busca’]))

{

$busca = $_GET[‘busca’];

}

?>
– usar ssl para dados importantes, evitando exposição de dados.
– Forçar a segurança de maneira que não pese ao usuário,
se possível transparente. Ex: solicitar autenticação por medida de segurança para um transação importante de um cliente já autenticado no sistema.

– tomar sempre cuidado no ato de detecção de ataques, isso pode impedir a usabilidade do sistema.
– cuidados com interações em sistemas remotos (rss, apis remotas – web services).
– filtrar bem os dados (todos) que entram, para não operar com dados
maliciosos.

Filtrar dados é ler o que se entra por $ _GET e $ _POST e observar o que está malicioso e distinguir isto. (bem fácil de filtrar, ruim é identificar a origem)

Todas entradas têm de vir de uma fonte remota, se você não conhece as entradas, não pode se defender delas.

Entradas como $_SERVER exigem muito mais trabalho na hora da filtragem.
– A pior forma de filtrar é tentar manipular ao invés de tratar que o que é limpo é limpo e o que é sujo é sujo, do contrário, tentar manipular as informações poderá criar brechas.
Trecho que reforça a segurança quando um atacante tenta retroceder 1 diretório (ou mais):

<?php

$nomefile = $_POST[‘nomefile’];

while (strpos($_POST[‘nomefile’], ‘..’) !== FALSE)
{
$nomefile = str_replace(‘..’, ‘.’, $nomefile);
}

?>

Evidentemente, o basename() função pode substituir toda esta técnica e é uma maneira segura de atingir o objectivo pretendido. O ponto importante é que qualquer tentativa de corrigir Dados inválidos podem conter um erro e permitir a passagem de dados inválidos. Inspeção é uma alternativa muito mais seguro.

INSPECIONAR É MELHOR QUE CORRIGIR, quando se tenta corrigir geralmente se abre uma falha, o que é a real necessidade do atacante.

Se você consegue identificar com precisão e fidelidade a entrada dos dados você já fez quase tudo.
Após, o passo seguinte é criar um filtro fiel para distinguir dados ruins de dados bons.

sempre que for tratar dados o bom é criar um array vazio e atribuir dados a ele, que você realmente sabe que estão limpos.

<?php
$limpo = array( );
switch($_POST[‘cor’]) {
case ‘vermelho’:
case ‘verde’:
case ‘azul’:
$limpo[‘cor’] = $_POST[‘cor’];
break;
}
?>

Estamos garantindo mais segurança por que a cor só pode ser uma das três e nada mais, neste caso!

você pode querer afirmar que um usuário só pode conter caracteres alfanuméricos:

<? php

$limpo = array ();

if (ctype_alnum ($ _POST [ ‘user’]))
(
$limpo[ ‘user’] = $ _POST [ ‘user’];
)

?>

Procure sempre usar funções nativas do php para segurança, isto pode lhe prevenir de problemas como erro de lógica, resultando assim em uma
brecha de segurança (o que um atacante necessita).

Para ajudar na segurança nos devemos:

Identificar saída,

Escapar saída,

Distinção entre escapara e não escapar dados .

É importante para escapar apenas dados filtrados. Embora escapar sozinho pode evitar muitas das vulnerabilidades de segurança, não deve nunca ser considerado como um substituto para a filtragem de entrada. Dados maliciosos devem ser filtrados primeiro e depois escapados.

Filtrar as entradas com htmlentities é melhor que htmlspecialchars, mas ambas são boas para converter o que vem da web, um exemplo legal é este aqui:

<?php
$htm = array( );
$htm[‘user’] = htmlentities($limpo[‘user’], ENT_QUOTES, ‘UTF-8’);
echo “<p>Olá, {$htm[‘user’]}.</p>”; ?>

Isso garante a entrada de dados do user, e de tabela quebra a forma em que os dados vêm de maneira a traduzir caracteres “malucos” em html.

Devemos escapar todos os dados SIM, isto ajuda na segurança de sua aplicação.
htmlentities não converte caracteres alfanuméricos, mas previne que dados estranhos operem em interação do usuário com o sistema.

Outra política, voltando-se ao famoso e muito utilizado mysql é usar funções nativas para escapar entradas de dados para o banco de dados.
Usamos a função mysql_real_escape_string ().
Podemos usar também addslashes para ajudar na relação com o mysql, mas em última instância.

<?php $mysql = array( );

$mysql[‘username’] = mysql_real_escape_string($clean[‘username’]);

$sql = “SELECT * FROM profile WHERE username = ‘{$mysql[‘username’]}'”; $result = mysql_query($sql); ?>

Fonte -> http://phpsecurity.org/

Anti-Vírus Grátis: Proteja seu computador sem por a mão no bolso!

Standard

Estes dias estive pensando em bolar um post como este, indicando ferramentas de anti-vírus grátis que eu usei e aprovei em muitos aspectos. Abaixo vou dar algumas dicas e links de downloads, mas vale a pena utilizar algumas das ferramentas. E mais uma coisa, se você também é um nerd e sabe que há outra ferramenta grátis, não deixe de nos avisar para que possamos testar e indicar também, e claro, deixar claro no blog que foi você quem nos reportou.

Anti-vírus e etc (malwares, bots…)

Spyware Terminator

Esta é uma das iniciativas que mais gostei, pois ele lembra muito o estilo Kaspersky (hoje eu tenho), Monitora processos, monitora tráfego, monitora plugins para o browser, monitora todos os passos do usuário.

Vantagens: Muito eficaz em seu padrão de verdadeiro ou falso, muito completo, com recursos de toolbar para o browser, visando a proteção contra exploits vindos direto da web para explorar vulnerabilidades no Browser.

Desvantagens: É MUITO (ressalto a caixa alta) pesado, sendo às vezes comparado com o antigo Norton (quem lembra?).

link de download -> http://www.spywareterminator.com/pt/download/download.aspx

Spybot

Esse carinha é um show, limpa cookies contaminados, processos maliciosos, processamento utilizado é razoável, grátis e muito fácil de usar. Uma das poucas ferramentas disponíveis que vai além do comum, tanto que se o trojan for auto inicializado e estiver com registros no Windows para se restaurar, spybot solicita reboot para tratar exatamente disto.

Vantagens:
É muito fácil de utilizar e tem resultados impressionantes.

Desvantagens: Muito lento o repositório para updates.

link para download -> http://www.safer-networking.org/pt/download/index.html

ClamWin

Sem dúvidas, esta é uma das iniciativas mais interessantes que vi.
Muito leve, muito estável e grátis. Surgiu da iniciativa Clamav, um respeitado anti-vírus gratuito feito para unix-like.

Vantagens: Talvez o anti-vírus mais leve já criado, ótima detecção.

Desvantagens: A detecção e precisão as vezes é duvidosa, retirando de alguns a confiança, mas para mim funciona muito corretamente.

link para download -> http://downloads.sourceforge.net/clamwin/clamwin-0.94.1-setup.exe

Kaspersky Grátis

A última alternativa é Trial, é mais usada para limpar as coisas quando já não dá mais para tentar, então faça o seguinte:

http://esd.element5.com/demoreg.html?productid=300299803

Esse link serve para cadastro do Kaspersky trial, e eu afirmo, este anti-vírus é Muito bacana, pena que é pesado.

Mas é isto.
Se alguém tem uma sugestão, dê um toque aí!

=]

Detecção de Intrusos em Aplicações WEB PHP com PHPIDS

Standard

Detecção de Intrusos em Aplicações php com PHPIDS

A dica aqui vai para servidores que rodam com o apache e php5 (sob linux).
O PHPIDs é um sistema de detecção de instrusos, simples, rápido, bem estruturado e de fácil utilização. Isto cria mais uma camada de segurança para a sua aplicação web. Ele não vai filtrar entradas maliciosas, tampouco fazer maravilhas, como se estivesse com inteligência artificial, ele irá detectar o ataque e irá reagir segundo as suas configurações. O interessante é que ele tem o poder de decisão no momento de uma tentativa de invasão. Ele
pode servir para informar ao atacante que está tentando invadir de cuidade, alerta e etc, ou mesmo, notificar ao core de desenvolvimento da aplicação por email a tal tentativa de invasão.

Este how to é beta e nada aqui é GARANTIDO de funcionar, mas deve!

Requerimentos:

Os testes foram realizados na plataforma Gnu/Linux, no sabor Debian Etch, o qual teve ip

setado como 192.168.0.100, tendo por usuário e grupo de usuário do apache www-data.
Nos testes o diretório principal usado é um virtual host -> /var/www/web1/web

Por questões de segurança o diretório do PHPIDs será criado em outro lugar para evitar problemas com a estrutura, tornando-a mais difícil contra vulnerabilidade, no caso:

mkdir /var/www/web1/phpids

Criamos um diretório recursivo, evitando acesso público ao web, que deixaria o script vulnerável.

O arquivo que usamos neste tutorial é phpids-0.4.7.tar.gz, o qual temos apenas a necessidade de uso diretório lib.

cd /tmp
wget http://php-ids.org/files/phpids-0.4.7.tar.gz
tar xvfz phpids-0.4.7.tar.gz
cd phpids-0.4.7
mv lib/ /var/www/web1/phpids/

Agora mudamos o diretório para /var/www/web1/phpids/lib/IDS:

cd /var/www/web1/phpids/lib/IDS

Agora iremos fazer com que o /tmp permita escrita para o usuário do apache (log do phpids necessitará):

chown -R www-data:www-data tmp/

Agora vamos configurar o PHPIDs em seu arquivo de configuração:

cd Config/
vi Config.ini

As configurações são padrão, todavia iremos alterar o caminho de onde estão os arquivos, sendo o ajuste final idêntico a isto aqui:

; PHPIDS Config.ini

; General configuration settings

; !!!DO NOT PLACE THIS FILE INSIDE THE WEB-ROOT IF DATABASE CONNECTION DATA WAS ADDED!!!

[General]

filter_type     = xml
filter_path     = /var/www/web1/phpids/lib/IDS/default_filter.xml
tmp_path        = /var/www/web1/phpids/lib/IDS/tmp
scan_keys       = false

exceptions[]    = __utmz
exceptions[]    = __utmc

; If you use the PHPIDS logger you can define specific configuration here

[Logging]

; file logging
path            = /var/www/web1/phpids/lib/IDS/tmp/phpids_log.txt

; email logging

; note that enabling safemode you can prevent spam attempts,
; see documentation
recipients[]    = test@test.com.invalid
subject         = “PHPIDS detected an intrusion attempt!”
header                      = “From: <PHPIDS> info@php-ids.org”
safemode        = true
allowed_rate    = 15

; database logging

wrapper         = “mysql:host=localhost;port=3306;dbname=phpids”
user            = phpids_user
password        = 123456
table           = intrusions

; If you would like to use other methods than file caching you can configure them here

[Caching]

; caching:      session|file|database|memcached|none
caching         = file
expiration_time = 600

; file cache
path            = /var/www/web1/phpids/lib/IDS/tmp/default_filter.cache

; database cache
wrapper         = “mysql:host=localhost;port=3306;dbname=phpids”
user            = phpids_user
password        = 123456
table           = cache

; memcached
;host           = localhost
;port           = 11211
;key_prefix     = PHPIDS
;tmp_path       = /var/www/web1/phpids/lib/IDS/tmp/memcache.timestamp

Pronto, terminado.

Usando o PHPIDs

Nós iremos criar o arquivo que vai fazer a chamada do PHPIDs (depois iremos ajustar o arquivo para chamar automaticamente os recursos do PHPIDs para todas as contas do servidor):

<?php
set_include_path(
get_include_path()
. PATH_SEPARATOR
. ‘/var/www/web1/phpids/lib’
);

require_once ‘IDS/Init.php’;
$request = array(
‘REQUEST’ => $_REQUEST,
‘GET’ => $_GET,
‘POST’ => $_POST,
‘COOKIE’ => $_COOKIE
);
$init = IDS_Init::init(‘/var/www/web1/phpids/lib/IDS/Config/Config.ini’);
$ids = new IDS_Monitor($request, $init);
$result = $ids->run();

if (!$result->isEmpty()) {
// Take a look at the result object
echo $result;
require_once ‘IDS/Log/File.php’;
require_once ‘IDS/Log/Composite.php’;

$compositeLog = new IDS_Log_Composite();
$compositeLog->addLogger(IDS_Log_File::getInstance($init));
$compositeLog->execute($result);
}
?>

Se você chamar o arquivo no browser, perceberá que o mesmo ficará em branco, no caso http://192.168.0.100/phpids.php – porém, mas se você tentar usar um suposto ataque, nosso amigo PHPIDs vai entrar em ação, use o exemplo -> http://192.168.0.100/phpids.php?test=%22%3EXXX%3Cscript%3Ealert(1)%3C/script%3E

Pronto, agora iremos ver o caminho para que os scripts usem o PHPIDs, e o interessante aqui, você não precisará alterar todos os seus scripts, isto por que iremos chamar o script automaticamente como recurso do PHP, isto carregará o mesmo “como se fosse um módulo”, e o parâmetro que define isto bacaninha é -> auto_prepend_file, iremos apontar o arquivo no php.ini principal do servidor, isso dará força e velocidade no desenvolvimento usando tal recurso. Isto também pode ser feito em um arquivo .htaccess, desde que apontemos tudo corretamente, haverá de funcionar turbinado.

NO CASO DO PHP.INI

vi /etc/php5/apache2/php.ini

procure pela linha auto_prepend_file, se não achar, insira no meio do arquivo aberto:

auto_prepend_file = /var/www/web1/web/phpids.php

Reinicie o Apache:

/etc/init.d/apache2 restart

NO CASO DO ARQUIVO .HTACCESS

vi /var/www/web1/web/.htaccess

php_value auto_prepend_file /var/www/web1/web/phpids.php

Verifique os confs de vhost, se estão assim:

<Directory /var/www/web1/web/>
AllowOverride All
</Directory>

Caso sim, caso tenha mudado algo no apache e retorne para este padrão acima, reinicie o apache.

Crie um simples arquivo ->

vi /var/www/web1/web/info.php
dentro dele:

<?php
phpinfo();
?>

Faça um acesso simples -> http://192.168.0.100/info.php

Agora, para ver o PHPIDs em ação use http://192.168.0.100/info.php?test=%22%3EXXX%3Cscript%3Ealert(1)%3C/script%3E

Se as mensagens de alerta forem vistas é por que o script de /var/www/web1/web/phpids.php foi chamado automaticamente de dentro de /var/www/web1/web/info.php.

Sobre os logs

Podem ser vistos em /var/www/web1/phpids/lib/IDS/tmp/phpids_log.txt, para ver rapidamente o teste use:

cat /var/www/web1/phpids/lib/IDS/tmp/phpids_log.txt

Algo parecido com os termos abaixo será exibido:

“192.168.0.77”,2008-06-04T17:36:08+02:00,54,”xss csrf id rfe

lfi”,”REQUEST.test=%5C%22%3EXXX%3Cscript%3Ealert%281%29%3C%2Fscript%3E GET.test=%5C%22%3EXXX%3Cscript%3Ealert%281%29%3C%2Fscript%3E”,”%2Finfo.php%3Ftest%3D%2522%253EXXX%253Cscript%253Ealert%281%29%253C%2Fscript%253E”

Isso é bom para quem quer analisar tipos de ataques e quer reaplicar mudanças valiosas na segurança.

Vamos fazer uma mudança no nível de segurança para que seja exibida informação, caso esteja vazio o ataque, prossiga, do contrário será parado o script!

vi /var/www/web1/web/phpids.php

<?php
set_include_path(
get_include_path()
. PATH_SEPARATOR
. ‘/var/www/web1/phpids/lib’
);

require_once ‘IDS/Init.php’;
$request = array(
‘REQUEST’ => $_REQUEST,
‘GET’ => $_GET,
‘POST’ => $_POST,
‘COOKIE’ => $_COOKIE
);
$init = IDS_Init::init(‘/var/www/web1/phpids/lib/IDS/Config/Config.ini’);
$ids = new IDS_Monitor($request, $init);
$result = $ids->run();

if (!$result->isEmpty()) {
// Take a look at the result object
echo $result;
require_once ‘IDS/Log/File.php’;
require_once ‘IDS/Log/Composite.php’;

$compositeLog = new IDS_Log_Composite();
$compositeLog->addLogger(IDS_Log_File::getInstance($init));
$compositeLog->execute($result);

die(‘<h1>Go away!</h1>’);
}
?>

fonte:

http://www.howtoforge.com/intrusion-detection-for-php-applications-with-phpids

Combatendo envio de spam em scripts PHP

Standard

Insira sempre o código abaixo no início de seus scripts com forms:

// Proteção contra injeção de SPAM
foreach ($_POST as $j =>$value) {
if (stristr($value,”Content-Type”)) {
header(“HTTP/1.0 403 Forbidden”);
exit;
}
}

Este também:

// Mais uma proteção contra SPAM
if ( preg_match( “/bcc:|Content-Type:/i”, implode( $_POST ) ) ){ exit; }


Também valide entradas de email com expressão regular:

// Verificando se o email é válido
if  (!eregi(“^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$”, $_POST[’email’])) {
die(“email inválido”);
}

É isso!