There are no locks which thieves couldn't unlock or break - nevertheless the
locks keep 99% of them not to try - that is why we lock our doors at home.

The same is here, I believe that at least some security will make more than
90% spam / scrap bots fail, while the other few percent does not matter SO
much - that it couldn't be handled manually.

Another question is - is it worth trying so hard?

Žilvinas Vilutis

Mobile:   (+370) 652 38353
E-mail:   cika...@gmail.com


On Tue, May 11, 2010 at 10:17 PM, Jeremy Thomerson <
jer...@wickettraining.com> wrote:

> You're subscribing to a mythical line of reasoning.  You're trying to
> protect against page-scraping by using URL obfuscation to hide the meaning
> of query string parameters.  I have actually done (legitimate, legal,
> purposefui) page scraping in the past for a couple of tasks - believe me -
> you are only going to slow down a page scraper by about thirty seconds.  If
> you really have data worth scraping, it doesn't matter if I have to do
> this:
>
> 1 - pull up homepage
> 2 - determine that I can change "/foo/1" to "/foo/2" to get the second page
>
> or this:
>
> 1 - pull up homepage
> 2 - determine that I have to look for a link by search pattern .someclass
> someelement a#next-page and use the href of that link to get second page of
> results
>
> And (as a page scraper) - I wouldn't even care that I need to have a
> session
> for the crypted url strategy to work.  I can easily do that with any number
> of http bot clients (including httpunit, etc).
>
> Bottom line is: if you use "security by obscurity", you're only fooling
> yourself into thinking it's secure.  If you need something secured, put a
> paywall in front of it.  (Of course, then I'll just buy an account and
> scrape it any way if I'm a determined competitor).
>
> --
> Jeremy Thomerson
> http://www.wickettraining.com
>
>
>
> On Tue, May 11, 2010 at 9:13 AM, Fernando Wermus
> <fernando.wer...@gmail.com>wrote:
>
> > Jeremy,
> >     There is a database with huge amount of data that could be collected
> by
> > someone else. If the url has a clear meaning, to say: /data/0, /data/1.
> > They
> > can get all the data from there. I would like to have fixed and encripted
> > urls.
> >
> > On Mon, May 10, 2010 at 4:17 PM, Jeremy Thomerson <
> > jer...@wickettraining.com
> > > wrote:
> >
> > > What is a hacker going to get from a URL like "/somepage"?
> > >
> > > --
> > > Jeremy Thomerson
> > > http://www.wickettraining.com
> > >
> > >
> > >
> > > On Mon, May 10, 2010 at 2:06 PM, Fernando Wermus
> > > <fernando.wer...@gmail.com>wrote:
> > >
> > > > Igor,
> > > >    Wicket in Action explains
> > > > "... Using this code, Wicket will encrypt all your URLs—including
> > > > bookmarkable URLs. ...".
> > > >
> > > > I need fixed entry point for my stateless page,  but not readable for
> > > > humans, because some hacker would like to extract all the information
> > > from
> > > > the site.
> > > >
> > > > How can I achieve this?
> > > >
> > > >
> > > > On Mon, May 10, 2010 at 4:01 PM, Igor Vaynberg <
> > igor.vaynb...@gmail.com
> > > > >wrote:
> > > >
> > > > > afair crypted strategy only encodes non-bookmarkable urls. it does
> > not
> > > > > encode bookmarkable urls because those are meant as entrypoints
> into
> > > > > your application.
> > > > >
> > > > > -igor
> > > > >
> > > > > On Mon, May 10, 2010 at 11:38 AM, Fernando Wermus
> > > > > <fernando.wer...@gmail.com> wrote:
> > > > > > Hi all,
> > > > > >    I create a PagingNavigator stateless. Instead of using a model
> > to
> > > > have
> > > > > > the number page shown, my StatelessPagingNavigator shows the
> number
> > > > > through
> > > > > > parameters. I hope that the page number wouldnt have been showed
> > > using
> > > > > > CryptedUrlWebRequestCodingStrategy, but It does. This is rather
> > > weird;
> > > > I
> > > > > > hope any could point me out some solution. Is my class written
> > > wrongly
> > > > in
> > > > > > some way?
> > > > > >
> > > > > >
> > > > > > public class StatelessPagingNavigator extends PagingNavigator {
> > > > > > private static final long serialVersionUID =
> 3576836044400027436L;
> > > > > >
> > > > > > public StatelessPagingNavigator(String id, DataView dataView) {
> > > > > > super(id, dataView);
> > > > > > }
> > > > > >
> > > > > >  @Override
> > > > > > protected Link newPagingNavigationIncrementLink(final String id,
> > > > > IPageable
> > > > > > pageable, int increment) {
> > > > > > * **PageParameters p=new PageParameters();*
> > > > > > *
> > > > > > *
> > > > > > * **p.add("increment", String.valueOf(increment));*
> > > > > > * **p.add("pageNumber",
> > String.valueOf(pageable.getCurrentPage()));*
> > > > > > Link link= new BookmarkablePageIncrementLink(id, pageable,
> > > > > > getPage().getClass(), p){
> > > > > > private static final long serialVersionUID = 1L;
> > > > > >
> > > > > > public boolean isEnabled()
> > > > > > {
> > > > > > return super.isEnabled() &&
> > StatelessPagingNavigator.this.isEnabled()
> > > > &&
> > > > > > StatelessPagingNavigator.this.isEnableAllowed();
> > > > > > }
> > > > > > };
> > > > > >  return link;
> > > > > > }
> > > > > >
> > > > > > @Override
> > > > > > protected Link newPagingNavigationLink(final String id, final
> > > IPageable
> > > > > > pageable, int pageNumber) {
> > > > > > * **PageParameters p=new PageParameters();*
> > > > > > * **p.add("pageNumber", String.valueOf(pageNumber));*
> > > > > >  return new BookmarkablePagingNavigationLink(id, pageable,
> > > > > > getPage().getClass(),  p){
> > > > > > private static final long serialVersionUID =
> -3076648671049640420L;
> > > > > >
> > > > > > public boolean isEnabled()
> > > > > > {
> > > > > > //return false;
> > > > > > return super.isEnabled() &&
> > StatelessPagingNavigator.this.isEnabled()
> > > > &&
> > > > > > StatelessPagingNavigator.this.isEnableAllowed();
> > > > > > }
> > > > > >  };
> > > > > > }
> > > > > >
> > > > > > @Override
> > > > > > protected PagingNavigation newNavigation(final IPageable
> pageable,
> > > > final
> > > > > > IPagingLabelProvider labelProvider) {
> > > > > > return new PagingNavigation("navigation", pageable,
> labelProvider)
> > {
> > > > > > private static final long serialVersionUID =
> 1102823179571300337L;
> > > > > >
> > > > > > @Override
> > > > > > protected Link newPagingNavigationLink(final String id, final
> > > IPageable
> > > > > > pageable, int pageIndex) {
> > > > > > * **PageParameters p=new PageParameters();*
> > > > > > * **p.add("pageIndex", String.valueOf(pageIndex));*
> > > > > >  return new BookmarkablePagingNavigation(id, pageable,
> > > > > getPage().getClass(),
> > > > > >  p){
> > > > > > private static final long serialVersionUID =
> -3076648671049640420L;
> > > > > >
> > > > > > public boolean isEnabled()
> > > > > > {
> > > > > > return super.isEnabled() &&
> > StatelessPagingNavigator.this.isEnabled()
> > > > &&
> > > > > > StatelessPagingNavigator.this.isEnableAllowed();
> > > > > > }
> > > > > >  };
> > > > > > }
> > > > > > };
> > > > > > }
> > > > > > }
> > > > > >
> > > > > > thanks in advance
> > > > > >
> > > > > > --
> > > > > > Fernando Wermus.
> > > > > >
> > > > > > www.linkedin.com/in/fernandowermus
> > > > > >
> > > > >
> > > > >
> ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> > > > > For additional commands, e-mail: users-h...@wicket.apache.org
> > > > >
> > > > >
> > > >
> > > >
> > > > --
> > > > Fernando Wermus.
> > > >
> > > > www.linkedin.com/in/fernandowermus
> > > >
> > >
> >
> >
> >
> > --
> > Fernando Wermus.
> >
> > www.linkedin.com/in/fernandowermus
> >
>

Reply via email to