2008/6/6 Edgard Costa <[EMAIL PROTECTED]>:
>
> Amigos Zope

Opa!

> Estive lendo sobre mal uso de determinados comandos inseridos em caixa
> de texto como forma de invasão ou tentativa de derrubada, isto
> relativo as pg escritas com outros scripts que não python.

Você está falando de SQLInjetion[1] e Cross Site Scripting[2].

Em ambos os casos estamos seguros com o Zope!

No caso do SQL Injection, o que temos é o tratamento feito pelo DTML
(linguagem utilizada para querys dinâmicas), onde basta um
<dtml-sqlvar variavel type="string"> para tratar isso (o segredo está
em usar sqlvar).

No caso do Cros Site Scripting o Zope Page Templates (vulgo ZPT,
utilizado para páginas dinâmicas) ignora quaisquer tags, simplesmente
as printa. Exemplo:

<p tal:content="request/variavel>aqui vem o valor dinamico da variavel
do request</p>

resultado:

<p>&lt;valor da variavel</p>

ou seja, nao há interpretação do valor da variável como HTML.

Porém em alguns casos onde se tem um DB com texto misturado com HTML,
coisa que acontece, você precisa que os códigos sejam interpretados,
nesse caso vc tem que usar o seguinte:

<p tal:content="structure request/variavel>aqui vem o valor dinamico
da variavel do request</p>

E isso deve ser feito apenas qdo a aplicação que gravou isto no banco
trata Cross Site Scripting e  SQL Injection.

> Existe este tipo de perigo no Zope/Plone??

Continuando ... agora, tudo se perde se vc não usar sqlvar na query
por exemplo, mas o Zope trata ntivo, basta vc ter o grande trabalho de
digitar sqlvar =).

No Plone existe ainda um tratamento mais sofisticado, onde vc eh quem
diz qual tag deve ser ignorada ou não, eu prefiro bem mais esta ideia.

> Alguém já leu relatos parecidos?

Eu trabalho com Zope e Plone desde 2003, e até hoje simplesmente
desconheço qualquer invasão por falha PZP. E conheço uma parte do
pessoal aqui da lista, e não me lembro de nenhum comentário sobre
isso, nem casos em Brasília onde eu "moro". Alguém conhece?

Aliás, confere o report de bugs de segurança de um Mambo e compara com
o do Plone, isto vai ter dar uma boa idéia do que estou falando.

Abraços

> EdgardCosta
>
> 

[1] http://en.wikipedia.org/wiki/SQL_injection
[2] http://en.wikipedia.org/wiki/Cross-site_scripting

--
Castardo
ThreePointsWeb
[EMAIL PROTECTED]
+55 61 8162-2072

Responder a