Solved

HTTP Protocol Question regarding message types HEAD and OPTIONS

Posted on 2012-04-03
3
462 Views
Last Modified: 2012-04-14
I have found some rather disturbing messages built into the HTTP protocol like
DELETE /page.html
PUT /page.html
I say disturbing because it is a security nightmare isn't it?
I  had thought that the HEAD /page.html   HTTP/1.1  
request command would be harmless enough but then I came across:
http://apache-range-exploit.com/

There is also supposed to be an OPTIONS request message that also fails to work on Apache servers.
Can anyone comment on this odd RFC 1226?
0
Comment
Question by:Robert Silver
  • 2
3 Comments
 
LVL 35

Expert Comment

by:mccarl
ID: 37804272
> I have found some rather disturbing messages built into the HTTP protocol like DELETE, PUT

Well, POST and even GET can be just as dangerous, it depends on how they are used!


> I say disturbing because it is a security nightmare isn't it?

That's why you have security built in to the application, and the HTTP protocol even provides for this if desired. It is not mandatory though because the protocol is designed to be applicable across a wide range of applications. Some of those may be totally within a trusted environment, in which if excessive security is forced would result is less efficient operations, for example.


> I  had thought that the HEAD /page.html   HTTP/1.1  
request command would be harmless enough but then I came across

The example that you cite is an issue with the "implementation" of the protocol within one particular product, it is not an issue with the protocol itself.


> There is also supposed to be an OPTIONS request message that also fails to work on Apache servers.

Ok!


> Can anyone comment on this odd RFC 1226?

That RFC doesn't seem to have anything to do with the rest of your post, is that the one you meant to quote?
0
 
LVL 82

Accepted Solution

by:
Dave Baldwin earned 300 total points
ID: 37804435
Try this from http://www3.ntu.edu.sg/home/ehchua/programming/howto/Apache_HowToConfigure.html .

<LimitExcept GET POST>
   Order deny,allow
   Deny from all
</LimitExcept>

Open in new window


Apparently, DELETE and PUT require a 'handler' to function.
0
 
LVL 82

Expert Comment

by:Dave Baldwin
ID: 37804443
In IIS, each handler can have the 'verbs' set that are passed to it.  Most Microsoft services only see "GET, POST, HEAD, DEBUG" and some only see GET and POST.
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Introduction One of the frequent application design questions goes something like this: "How can I confirm when a client registers on my web site?" The registration might be for general use of a self-administered site like a forum, or for attend…
A Change in PHP Behavior with Session Write Short Circuit (http://php.net/manual/en/book.session.php#116217) (Winter 2014)** With the release of PHP 5.6 the session handler changed in a way that many think should be considered a bug.  See the note …
This video demonstrates how to create an example email signature rule for a department in a company using CodeTwo Exchange Rules. The signature will be inserted beneath users' latest emails in conversations and will be displayed in users' Sent Items…
You have products, that come in variants and want to set different prices for them? Watch this micro tutorial that describes how to configure prices for Magento super attributes. Assigning simple products to configurable: We assigned simple products…

757 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now