Hi Daniel,

your frustration is understandable and I hope you excuse a further comment. 
What is missing, IMVHO, is a central point of reference for all Kamailio 
security issues. Googling for “Kamailio security” reveals 
https://www.cvedetails.com/vulnerability-list/vendor_id-15820/Kamailio.html as 
the most comprehensive source. However it lacks this latest header bug.

My suggestion would be to create a special “Security Advisories” page on the 
kamailio website which points to security news, so that Google indexes that 
page. As for example Asterisk has 
https://www.asterisk.org/downloads/security-advisories/

And create on github an extra “security” label so one can filter for that. 
https://github.com/kamailio/kamailio/labels
And then point from the above mentioned “Security Advisories” page to a 
filtered github view.

Thanks for your great work on Kamailio. Its highly appreciated!

Best Gerry


> On 22 Sep 2020, at 12:55, Daniel-Constantin Mierla <mico...@gmail.com> wrote:
> 
> At least in my case you push out some inaccurate information. I never said my 
> "deployments were not affected since non-standard headers were not used".
> 
> Iirc, I only said that none of my deployments were affected by this issue -- 
> respectively quoting from my message: "None of my deployments were affected." 
> from:https://lists.kamailio.org/pipermail/sr-users/2020-September/110315.html 
> <https://lists.kamailio.org/pipermail/sr-users/2020-September/110315.html> . 
> If I am mistaken and you found another remark from me, just point to my 
> message from where you got that.
> 
> So, for further clarification: either non standard headers were used for 
> non-security related features (e.g., used for troubleshooting purposes) or 
> the issue didn't affect the deployments from different perspective (e.g., 
> traffic was checked to be from a trusted source).
> 
> And remember that the issue was not with remove_hf() function itself, like it 
> is somehow propagated by blog posts, but it was in the parser, so use of 
> custom headers between two kamailio was not affected if an edge proxy did 
> something like:
> 
> remove_hf("X-H");
> 
> append_hf("X-H: abc\r\n");
> 
> And then, if next hop Kamailio was using $hdr(X-H), it will get "abc" (value 
> added by previous Kamailio), not what a bad actor would add as "X-H : 
> badvalue\r\n" sip header.
> 
> Then you listed two commits you consider there should have been security 
> advisories about. Have you analysed the code and found cases where security 
> was affected, or is just your opinion in based on the commit message and code 
> patch?
> 
> First, I would love that one or many spend time to dissect commits and see 
> their security implication. I am more that happy when someone does it and 
> let's everyone be aware of, also to write and publish appropriate advisory.
> 
> Otherwise, for those two specific commits you listed, the one from Federico 
> is a memory leak, I haven't spent time on going deeper to find the specific 
> cases, From header should be parsed in SIP requests. My commit was done based 
> on a static code analyzer and again I was not spending time to see what 
> implications are.
> 
> In general, in the code we work a lot with str structure (non-zero terminated 
> char* and len), many of the "safety" commits done lately were to silent 
> static code analysers, not meaning that it was a real issue found behind. 
> Some can be, and here we appreciate the time and effort of people like you to 
> dissect them and make appropriate advisories.
> 
> I would like people do verify what they write about what specific people (of 
> course, specially for my person) said before pushing out, and eventually 
> validate a commit to fix something has security impact, instead of just 
> personal guessing, if the intention is to help the project and not to create 
> more confusion or other reactions for what so ever reasons.
> 
> This should be my last comment on the thread, I do not want to spend any more 
> time in clarifying what people think I said or I did.
> 
> Cheers,
> Daniel
> 
> On 22.09.20 11:31, Sandro Gauci wrote:
>> I know I am waking up an old debate by replying to this thread. Deeply sorry 
>> :-)
>> 
>> Finally got around to writing up a blog post about this very thread where I 
>> (think) I spared absolutely no one, not even myself. 
>> 
>> My post is called "The great Kamailio security debate and some 
>> misconceptions debunked" and can be read here:
>> 
>> https://www.rtcsec.com/2020/09/02-kamailio-security-debate-and-misconceptions/
>>  
>> <https://www.rtcsec.com/2020/09/02-kamailio-security-debate-and-misconceptions/>
>> 
>> The ToC:
>> Introduction
>> A bit of background before diving in
>> Claim: this issue does not affect many organisations
>> Claim: custom headers are only known to internal users
>> Claim: if it’s an 18 year old bug, it can’t have been high risk
>> Claim: this should have been found if people were doing proper testing
>> Claim: infrequent advisories = project is not serious about security
>> Claim: limited number of advisories = project is more secure
>> Claim: if you’re serious about security, monitor the mailing lists
>> Claim: security experts should decide what is a security vulnerability
>> Discussion: when should the project publish an advisory?
>> Discussion: educational security role
>> Moving forward
>> Hope that it is at least interesting and perhaps even constructive!
>> 
>> Best wishes,
>> 
>> --
>>  
>>     Sandro Gauci, CEO at Enable Security GmbH
>> 
>>     Register of Companies:      AG Charlottenburg HRB 173016 B
>>     Company HQ:                       Pappelallee 78/79, 10437 Berlin, 
>> Germany
>>     PGP/Encrypted comms:     https://keybase.io/sandrogauci 
>> <https://keybase.io/sandrogauci>
>>     Our blog:                                https://www.rtcsec.com 
>> <https://www.rtcsec.com/>
>>     Other points of contact:      https://enablesecurity.com/#contact-us 
>> <https://enablesecurity.com/#contact-us>
>> 
>> 
>> 
>> On Thu, 3 Sep 2020, at 10:34 AM, Olle E. Johansson wrote:
>>> Well, you have defined one definitive line between being stupid and 
>>> following some current practise :-)
>>> 
>>> I like to think we as a project have an educational role as well. In this 
>>> case explaining the bug we had and what it can cause.
>>> We should definitely add a warning along the lines you write too - relying 
>>> on headers alone is bad and not best current practise.
>>> 
>>> /O
>>> 
>>>> On 3 Sep 2020, at 10:14, davy van de moere <davy.van.de.mo...@gmail.com 
>>>> <mailto:davy.van.de.mo...@gmail.com>> wrote:
>>>> 
>>>> After 20 years in voip, my 2 cents on this, if you succeed in creating a 
>>>> voip system where the security of the whole relies on the ability to 
>>>> remove (or only keep specific) custom sip headers, you will wake up one 
>>>> morning realizing a bunch of people in Palestine made a gazillion calls 
>>>> over your system to expensive destinations, bringing you to or over the 
>>>> edge of bankruptcy.
>>>> 
>>>> Security should be multilayered, one header sneaking through should not 
>>>> give any big problems. 
>>>> 
>>>> From a security point of view, this could be called a 'normal' security 
>>>> risk, I think. It's a bit more than low as you can do more than just get 
>>>> some info, but it's not high, as you would need to have many other factors 
>>>> going wrong to get to a successful exploit. 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Op do 3 sep. 2020 om 09:18 schreef Olle E. Johansson <o...@edvina.net 
>>>> <mailto:o...@edvina.net>>:
>>>> One thought - we may have to separate security vulnerability reporting 
>>>> from security advisory documents. I think in some cases, where a common 
>>>> use of a product can lead to issues (but it is not clearly a bug that 
>>>> cause crashes in our code) we may have to send out an advisory and publish 
>>>> it in the same way. The problem with that is where the border is between 
>>>> just doing stupid things like taking SQL statements from SIP headers and 
>>>> issues like this that are harder to catch.
>>>> 
>>>> We had a long and hard discussion about this in the Asterisk project many 
>>>> years ago - a very common dialplan construct (that was documented in many 
>>>> places) was indeed very dangerous. It wasn’t any code in asterisk that 
>>>> caused the issue, just a common dialplan construct that existed in many, 
>>>> many production systems. In the end, if I remember correctly, the project 
>>>> issued an advisory and added a README about it.
>>>> 
>>>> Maybe that’s a way forward.
>>>> 
>>>> /O
>>>> 
>>>>> On 2 Sep 2020, at 21:25, Henning Westerholt <h...@skalatan.de 
>>>>> <mailto:h...@skalatan.de>> wrote:
>>>>> 
>>>>> Hello Maxim,
>>>>>  
>>>>> have a look to the first sentence:
>>>>>  
>>>>> “A security vulnerability is (for example) when a user of Kamailio can 
>>>>> cause Kamailio to crash or lock up by sending messages to the server 
>>>>> process.”
>>>>>  
>>>>> So there is some limitation regarding vulnerability criticality defined 
>>>>> in there. But of course (as I already mentioned), it might be improved to 
>>>>> e.g. use CVSS scoring instead.
>>>>>  
>>>>> Cheers,
>>>>>  
>>>>> Henning
>>>>>  
>>>>> From: Maxim Sobolev <sobo...@sippysoft.com 
>>>>> <mailto:sobo...@sippysoft.com>> 
>>>>> Sent: Wednesday, September 2, 2020 9:15 PM
>>>>> To: Henning Westerholt <h...@skalatan.de <mailto:h...@skalatan.de>>
>>>>> Cc: Daniel-Constantin Mierla <mico...@gmail.com 
>>>>> <mailto:mico...@gmail.com>>; yufei....@gmail.com 
>>>>> <mailto:yufei....@gmail.com>; Olle E. Johansson <o...@edvina.net 
>>>>> <mailto:o...@edvina.net>>; Gerry | Rigatta <gjacob...@rigatta.com 
>>>>> <mailto:gjacob...@rigatta.com>>; Kamailio (SER) - Users Mailing List 
>>>>> <sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org>>; 
>>>>> jbro...@signalogic.com <mailto:jbro...@signalogic.com>
>>>>> Subject: Re: [SR-Users] Kamailio vulnerable to header smuggling possible 
>>>>> due to bypass of remove_hf
>>>>>  
>>>>> On Wed, Sep 2, 2020 at 11:30 AM Henning Westerholt <h...@skalatan.de 
>>>>> <mailto:h...@skalatan.de>> wrote:
>>>>> Hello Maxim,
>>>>>  
>>>>> thank you for the clarification, appreciated.
>>>>>  
>>>>> No worries, hope to have a civilized discussion.
>>>>>  
>>>>> Just one clarification, my comment regarding the advisory from 2018 was 
>>>>> not meant as advertisement etc..
>>>>>  
>>>>> Point taken, I dramatized of course to underline my point. 
>>>>>  
>>>>> One suggestion to objectify the whole discussion, there exists a 
>>>>> well-known and accepted metric for vulnerabilities: CVSS [1]
>>>>> If I calculate the CVSS score for this issue, it results in a medium 
>>>>> level with score 5.8. But this is of course again (at least somewhat) 
>>>>> influenced from my point of view to this bug.
>>>>>  
>>>>> Some projects have a policy to only do a security announcement for 
>>>>> vulnerabilities with score high and critical. For Kamailio this is not 
>>>>> yet defined in a detailed way, due to the size of the project and other 
>>>>> factors.
>>>>>  
>>>>> So, If people in this discussion (or other people on the list) are 
>>>>> interested in improving the project security processes – this wiki page 
>>>>> with the current process might be a good starting 
>>>>> point:https://www.kamailio.org/wiki/security/policy 
>>>>> <https://www.kamailio.org/wiki/security/policy>
>>>>>  
>>>>> Please suggest your improvements to the existing process (preferable in a 
>>>>> new discussion thread) on the sr-dev list. If you want to do it in 
>>>>> private, feel free contact the management list.
>>>>>  
>>>>> Well, first suggestion after having read it: to start actually following 
>>>>> what's documented before any improvements are made. ;-) The policy says 
>>>>> plain and simple (quote):
>>>>>  
>>>>> Publishing security vulnerabilities
>>>>> 
>>>>> Kamailio will publish security vulnerabilities, including an CVE ID, on 
>>>>> the kamailio-business mailing list, sr-dev, sr-users as well as related 
>>>>> lists. The advisories will also be published on the kamailio.org 
>>>>> <http://kamailio.org/> web site. 
>>>>>  
>>>>> CVE entries should be created for vulnerabilities in the core and major 
>>>>> modules, for rarely used modules this is not necessary. If there are 
>>>>> several security issues together in one release, they should be announced 
>>>>> together.  
>>>>>  
>>>>> I might be missing something obvious, but there is no "if" or "maybe" or 
>>>>> "it depends". Any module that has been 18 years with the project 
>>>>> qualifies to be a "major module" to me... 
>>>>>  
>>>>> -Max
>>>> 
>>>> 
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing List
>>>> sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org>
>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users 
>>>> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing List
>>>> sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org>
>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users 
>>>> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
>>> 
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org>
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users 
>>> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
>>> 
>> 
>> 
>> 
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org>
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users 
>> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
> -- 
> Daniel-Constantin Mierla -- www.asipto.com <http://www.asipto.com/>
> www.twitter.com/miconda <http://www.twitter.com/miconda> -- 
> www.linkedin.com/in/miconda <http://www.linkedin.com/in/miconda>
> Funding: https://www.paypal.me/dcmierla 
> <https://www.paypal.me/dcmierla>_______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users@lists.kamailio.org <mailto:sr-users@lists.kamailio.org>
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users 
> <https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users>
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users@lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to