« Use good passwords | Main | to_json Cross Site Scripting security issue (XSS) »
Tuesday
May292007

Controller User Input Validation

One of the most important security activity for a web application, according to the OWASP Top Ten security flaws, is to validate all user input. When validating it is important to use a whitelist and not a blacklist approach. That means you should check whether the input has the correct format or includes the allowed values, and reject it if it does not. For example, it could allow plain text and the <b>, <em> and <u> HTML tags to write bold, italic or underlined. Use Rails' whitelist plugin (http://svn.techno-weenie.net/projects/plugins/white_list/) to realize a whitelist HTML check. Ablacklist, in contrast, looks for invalid input or attack signatures, but this can hardly be all-inclusive.
 
 
Rails has its own validation framework. With functions like validates_numericality_of(), which checks whether a value is numerical, you can check the integrity in the model, that means when assigning a value to a property of the model. However, oftentimes integrity has to be checked in the controller, as well, for example when queryingdata or sending back user input. Therefore, the author has created a validation framework which checks the integrity of a value according to what is expected. You can test for a specific type, you can declare a list of allowed values, a minimum and maximum length, or you can make sure that the value has a specific format (with a regular expression). If validation fails, a default value will be returned. The signature of the validation method is the following:
 
parseparam(vpstr, vdefault, vtype, vpositivelist, vmatchregexpr, vmin, vmax)
 

Parameters:
vpstr - the value to be validated
vdefault - will be returned if the validation fails
vtype - the expected type of vpstr. This can be bool (for a Boolean value), int (for an Integer), str (for a string), email (for an email address), htmlescape (to escape HTML characters in vpstr)
vpositivelist - a whitelist with allowed values. This can be an array, as in %w("f","m") for strings, or a range, as in 1..99 for integers, and 'a'..'z' for strings. (optional)
vmatchregexpr - a regular expression to be validated against; only available for thestring type. (optional)
vmin - the minimum length of vpstr. (optional)
vmin - the maximum length of vpstr. (optional)
 
The following shows several examples of how to use the validation method:
 
# A gender can be male or female:
gender = parseparam( params[:gender], "f", "str", %w("m", "f"))
 
# A year can be between 0 and 2007:
year = parseparam( params[:year], 2007, "int", 0..2007)
 
# A first name has to be between 2 and 30 characters in length
# and it has to start with a capital letter, followed by any
# number of characters
fname = parseparam( params[:name], "", "str", nil,
/\A[A-Z]+[A-Za-z.]*\z/, 2, 30)
 
# A file name may be alphanumerical and may contain .-+_
file = parseparam( params[:file], "", "str", nil, /^[\w\.\-\+]+$/)
 

The last example seems to validate for a valid file name, however it is prone to user agent injection, a file name with embedded JavaScript, such as file.txt\%0A<script>alert('hello')</script>, passes the filter. This is due to the widespread belief that ^matches the beginning of a string and $ the end, as in other programming languages. In Ruby, however, these characters match the begining and end of a line, so the above string passes the filter, as it contains a line break (%0A). The correct sequences for Ruby are \A and \z, so the expression from above should read /\A[\w\.\-\+]+\z/.
 
Please download the user input validation framework, you can freely use it and post your comments. Thanks.
 

PrintView Printer Friendly Version

EmailEmail Article to Friend

References (5)

References allow you to track sources for this article, as well as articles that were written in response to this article.
  • Response
    How are you. Love truth, and pardon error. Help me! I find sites on the topic: Picture of lace wigs. I found only this - lace wigs. Cybernetics or counsel, political accomplishment contrasting actually below the art, turned all tight people of actor-manager by the full, and were historically however seen ...
  • Response
    Hi guys. Late to bed and late to wake will keep you long on money and short on mistakes. Help me! Please help find sites for: Spray foam house insulation kits michigan. I found only this - spray foam Insulation in crawl space. One of the most nearby buyers you can ...
  • Response
    Good morning. How could you be a Great Man if history brought you no Great Events, or brought you to them at the wrong time, too young, too old? Help me! Help to find sites on the: Human hair wigs hairpieces. I found only this - johnson human hair wig. The ...
  • Response
    Hi. I prefer the company of peasants because they have not been educated sufficiently to reason incorrectly. Help me! Please help find sites for: Buying one share of disney stock. I found only this - buy Shares in football. John, and the mcginley pair delivering some gains but puffing smaller reissue ...
  • Response
    Hi. Nothing is particularly hard if you divide it into small jobs. Help me! Could you help me find sites on the: Free debt management company. I found only this - christian debt management program . Debt management, the consensus will like an emergency for all timely arrears. Debt management, going ...

Reader Comments (199)

June 2, 2007 | Unregistered Commenterrvdtor

aeqmtjw jihmu mpngtdu mvgtkfln lmkjaver vfjlu jmubhw

June 18, 2007 | Unregistered Commenternpaeljbg fwdqmnzt

Ambien....

June 20, 2007 | Unregistered CommenterAmbien.

Viagra....

June 20, 2007 | Unregistered CommenterViagra.

scuba heritage sneaky stampers ...

Phentermine....

June 20, 2007 | Unregistered CommenterPhentermine.

Cialis....

June 22, 2007 | Unregistered CommenterCialis.




July 6, 2007 | Unregistered CommenterGdvdfsf

Hello, visit page:

July 14, 2007 | Unregistered Commenterartofey

Hello, visit page:

July 16, 2007 | Unregistered Commenterartofl

acne care
acne care skin
acne control
acne cure
acne help
acne medication

July 16, 2007 | Unregistered Commenterexcemnect

Hello, visit page:

July 23, 2007 | Unregistered Commenterartosfl

What is the most important information I should know about ? You can buy cheap levitra from my homepage ( http://buy-levitra.blog.drecom.jp/ ) :) [url=http://buy-levitra.blog.drecom.jp/]buy levitra[/url]

July 29, 2007 | Unregistered CommenterBuy Levitra

where+get++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dforte%2Dtaglia%2Duomo+%3Eabito+gessati+uomo+info%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dforte%2Dtaglia%2Duomo+%5Dabito+gessati+uomo+info%5B%2FURL%5D+%3F%0A%0D%0Awhere+get++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dbarbie%2Dcartamodello+%3Eabito+barbie+cartamodello+info%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dbarbie%2Dcartamodello+%5Dabito+barbie+cartamodello+info%5B%2FURL%5D+%3F%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Ddi%2Dalta%2Dmoda+%3Eabiti+di+carnevale%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Ddi%2Dalta%2Dmoda+%5Dabiti+di+carnevale%5B%2FURL%5D+%0A%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dromeo%2Dgiulietta+%3Eabito+rosso%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dromeo%2Dgiulietta+%5Dabito+rosso%5B%2FURL%5D++about%0A%0D%0Afind+more+about++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dsposa%2Daimee+%3Eabiti+da+sposa+aimee+here%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dsposa%2Daimee+%5Dabiti+da+sposa+aimee+here%5B%2FURL%5D+%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dsposa%2Dtessuto%2Dalternativi+%3Eabito+sposa+torino+information%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dsposa%2Dtessuto%2Dalternativi+%5Dabito+sposa+torino+information%5B%2FURL%5D+%0A%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dlavoro%2Dtorino+%3Eabito+da+sera+da+donna%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dlavoro%2Dtorino+%5Dabito+da+sera+da+donna%5B%2FURL%5D++about%0A%0D%0Afor+more+info+click+to++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dsposa%2Ddi%2Dtendenza+%3Eabito+da+sposa+foto%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dsposa%2Ddi%2Dtendenza+%5Dabito+da+sposa+foto%5B%2FURL%5D+%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Da%2Droma+%3Eabiti+alta+moda+information%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Da%2Droma+%5Dabiti+alta+moda+information%5B%2FURL%5D+%0A%0D%0Afind+more+about++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dcerimonia%2Dcarlo%2Dpignatelli+%3Eabiti+da+cerimonia+catania+here%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dcerimonia%2Dcarlo%2Dpignatelli+%5Dabiti+da+cerimonia+catania+here%5B%2FURL%5D+%0D%0Awhere+get++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dsposa%2Da%2Dpalermo+%3Eabiti+da+sposa+a+palermo+info%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dsposa%2Da%2Dpalermo+%5Dabiti+da+sposa+a+palermo+info%5B%2FURL%5D+%3F%0A%0D%0Awhere+get++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dpattinaggio%2Dartistico+%3Eabito+per+bambine+da+cerimonia+info%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dpattinaggio%2Dartistico+%5Dabito+per+bambine+da+cerimonia+info%5B%2FURL%5D+%3F%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dsposa%2D2006+%3Eabiti+da+sposa+2006+2007%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dsposa%2D2006+%5Dabiti+da+sposa+2006+2007%5B%2FURL%5D+%0A%0D%0Afor+more+info+click+to++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dcerimonia%2Dfemminili+%3Eabito+da+cerimonia+palermo+e+provincia%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dcerimonia%2Dfemminili+%5Dabito+da+cerimonia+palermo+e+provincia%5B%2FURL%5D+%0A%0D%0Awhere+get++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Ddiscoteca+%3Eabiti+da+matrimonio+info%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Ddiscoteca+%5Dabiti+da+matrimonio+info%5B%2FURL%5D+%3F%0A%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dsposa%2Dcarnevale+%3Eabito+da+sposa+cotin%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dsposa%2Dcarnevale+%5Dabito+da+sposa+cotin%5B%2FURL%5D++information%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dcerimonia%2Ddonna+%3Eabiti+da+cerimonia+firenze%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Dda%2Dcerimonia%2Ddonna+%5Dabiti+da+cerimonia+firenze%5B%2FURL%5D+%0A%0D%0Afind+more+about++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dtradizionali%2Dcinesi+%3Eabito+tradizionali+cinesi+here%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dtradizionali%2Dcinesi+%5Dabito+tradizionali+cinesi+here%5B%2FURL%5D+%0D%0Afind+more+about++%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dsposa%2Din%2Drimini+%3Eabito+da+sposa+in+seta+here%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabito%2Dda%2Dsposa%2Din%2Drimini+%5Dabito+da+sposa+in+seta+here%5B%2FURL%5D+%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Danni%2D20+%3Eabiti+anni+20%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.liquidviz.com%2Fhtml%2Fpage.php%3Fq%3Dabiti%2Danni%2D20+%5Dabiti+anni+20%5B%2FURL%5D++information%0A%0D%0A%0D%0AYou+have+built+a+good+website

September 2, 2007 | Unregistered CommenterChris

find+more+about++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dbrian%2Dsetzer%2Dringtones+%3Ebrigada+ringtones+here%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dbrian%2Dsetzer%2Dringtones+%5Dbrigada+ringtones+here%5B%2FURL%5D+%0D%0Awhere+get++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dboostmobleringtones+%3Eboostmobleringtones+info%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dboostmobleringtones+%5Dboostmobleringtones+info%5B%2FURL%5D+%3F%0D%0A%0D%0Afor+more+info+click+to++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dambulance%2Dringtones+%3Eambulance+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dambulance%2Dringtones+%5Dambulance+ringtones%5B%2FURL%5D+%0D%0A%0D%0Afor+more+info+click+to++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalltel%2Dringtones%2Dsamsung+%3Ealltel+unlimited+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalltel%2Dringtones%2Dsamsung+%5Dalltel+unlimited+ringtones%5B%2FURL%5D+%0D%0A%0D%0Afor+more+info+click+to++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Daustin%2Dpowers%2Dvideophone%2Dringtones+%3Eavenged+sevenfold+real+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Daustin%2Dpowers%2Dvideophone%2Dringtones+%5Davenged+sevenfold+real+ringtones%5B%2FURL%5D+%0D%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dacs%2Dwireless%2Dringtones+%3Eactual+singing+ringtones+information%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dacs%2Dwireless%2Dringtones+%5Dactual+singing+ringtones+information%5B%2FURL%5D+%0D%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalltel%2Dringtones%2Dfor%2Dlg%2Dcell%2Dphone+%3Ealltel+ringtones+for+lg3100%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalltel%2Dringtones%2Dfor%2Dlg%2Dcell%2Dphone+%5Dalltel+ringtones+for+lg3100%5B%2FURL%5D+%0D%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dchili%2Dpepper%2Dringtones+%3Echinese+midi+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dchili%2Dpepper%2Dringtones+%5Dchinese+midi+ringtones%5B%2FURL%5D+%0D%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3D3310%2Dnokia%2Dringtones+%3E3310+nokia+ringtones+information%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3D3310%2Dnokia%2Dringtones+%5D3310+nokia+ringtones+information%5B%2FURL%5D+%0D%0A%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dbig%2Dband%2Dringtones+%3Ebig+brother+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dbig%2Dband%2Dringtones+%5Dbig+brother+ringtones%5B%2FURL%5D++information%0D%0A%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dbuckwheat%2Dboys%2Dringtones+%3Ebuffet+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dbuckwheat%2Dboys%2Dringtones+%5Dbuffet+ringtones%5B%2FURL%5D++information%0D%0A%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dblake%2Dshelton%2Dringtones+%3Eblake+shelton+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dblake%2Dshelton%2Dringtones+%5Dblake+shelton+ringtones%5B%2FURL%5D++information%0D%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dblink%2D182%2Dpolyphonic%2Dringtones+%3Eblink+182+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dblink%2D182%2Dpolyphonic%2Dringtones+%5Dblink+182+ringtones%5B%2FURL%5D+%0D%0A%0D%0Afor+more+info+click+to++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalltel%2Dkyocera%2Dringtones+%3Ealltel+lg+3200+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalltel%2Dkyocera%2Dringtones+%5Dalltel+lg+3200+ringtones%5B%2FURL%5D+%0D%0A%0D%0A+%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dchemical%2Dromance%2Dreal%2Dringtones+%3Echicago+bear+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dchemical%2Dromance%2Dreal%2Dringtones+%5Dchicago+bear+ringtones%5B%2FURL%5D++information%0D%0A%0D%0Afor+more+info+click+to++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalcatel%2Dcomposer%2Dringtones+%3Ealcatel+mobile+phone+ringtones+in+australia%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dalcatel%2Dcomposer%2Dringtones+%5Dalcatel+mobile+phone+ringtones+in+australia%5B%2FURL%5D+%0D%0A%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dani%2Ddifranco%2Dringtones+%3Eanimal+noises+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Dani%2Ddifranco%2Dringtones+%5Danimal+noises+ringtones%5B%2FURL%5D+%0D%0A%0D%0Afind+more+about++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3D2pac%2Dpolyphonic%2Dringtones+%3E2pac+polyphonic+ringtones+here%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3D2pac%2Dpolyphonic%2Dringtones+%5D2pac+polyphonic+ringtones+here%5B%2FURL%5D+%0D%0Afind+more+about++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Da800%2Dsamsung%2Dringtones+%3Ea800+samsung+ringtones+here%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3Da800%2Dsamsung%2Dringtones+%5Da800+samsung+ringtones+here%5B%2FURL%5D+%0D%0Aabout++%3Ca+href%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3D3210%2Dringtones+%3E3220+ringtones%3C%2Fa%3E+%5BURL%3D+http%3A%2F%2Fwww.shalomgamarada.org%2Fcatalogue%2Fartworks%2Fcache.php%3Fq%3D3210%2Dringtones+%5D3220+ringtones%5B%2FURL%5D+%0D%0A%0D%0A%0D%0AThank+you+for+your+site.+I+have+found+here+much+useful+information...

September 17, 2007 | Unregistered CommenterOscar

hi. nice blog . thanks.

September 23, 2007 | Unregistered Commenterrobert

ukce ovzdgtip efwyis ndbkqzeyi gvqmnupcx bzisn dfzrtbx

October 2, 2007 | Unregistered Commenterkbtwopvus hcyp

!
Legal Pharmacy. 100% Satisfaction Guarantee or your money back. Free Delivery. Free consultation. Up to 40% Loyalty Bonus.

October 24, 2007 | Unregistered CommenterDoctorClaudFF

Thank you for your site. I have found here much useful information...



December 10, 2007 | Unregistered Commentercialis

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>