[sr-dev] New Kamailio module Obfuscate

Muhammad Shahzad shaheryarkh at gmail.com
Tue Aug 5 12:06:47 CEST 2014


yup, i always download kamailio from official repo mentioned here,

http://www.kamailio.org/wiki/install/devel/git

Thank you.




On Tue, Aug 5, 2014 at 3:03 PM, Daniel-Constantin Mierla <miconda at gmail.com>
wrote:

>
> On 05/08/14 11:55, Muhammad Shahzad wrote:
>
>  OK, created the patch finally...
>
>
> http://webrtc.voip-demos.com/0001-added-support-for-network-io-intercept.patch
>
>
> I will look over it and push it to the repository if everything is ok.
>
>
>
>  I had to add all file i wanted to include in the commit using "git add",
> even the ones that are already included in git repo, e.g. corex.xml and
> corex_mod.c.
>
> Strange, I never had to do it -- did you clone the git repository from
> sip-router.org?
>
>
>  I will just let you know i hit my head on wall just 17 times to make it
> work. :-(
>
> Hopefully it was facebook wall :-)
>
> Daniel
>
>
>
>  Thank you.
>
>
>
>
> On Tue, Aug 5, 2014 at 2:40 PM, Daniel-Constantin Mierla <
> miconda at gmail.com> wrote:
>
>>  You should use:
>>
>> git format-patch -1 <sha>
>>
>> The <sha> in your case appears to be f415b0c . If it is last commit,
>> should work with:
>>
>> git format-patch -1 HEAD
>>
>> Cheers,
>> Daniel
>>
>>
>> On 05/08/14 11:25, Muhammad Shahzad wrote:
>>
>>   These commands do not seem to work for me. Can you please do the patch?
>>
>>  1. adding files work,
>>
>> git add modules/corex/corex_nio.c modules/corex/corex_nio.h
>>
>> git status
>> # On branch master
>> # Changes to be committed:
>> #   (use "git reset HEAD <file>..." to unstage)
>> #
>> #    new file:   modules/corex/corex_nio.c
>> #    new file:   modules/corex/corex_nio.h
>> #
>> # Changes not staged for commit:
>> #   (use "git add <file>..." to update what will be committed)
>> #   (use "git checkout -- <file>..." to discard changes in working
>> directory)
>> #
>> #    modified:   modules/corex/README
>> #    modified:   modules/corex/corex_mod.c
>> #    modified:   modules/corex/doc/corex.xml
>> #    modified:   modules/corex/doc/corex_admin.xml
>> #
>>
>>  2. making commit seems to work,
>>
>> git commit -m "added support for network io intercept."
>> [master f415b0c] added support for network io intercept.
>>  2 files changed, 268 insertions(+)
>>  create mode 100644 modules/corex/corex_nio.c
>>  create mode 100644 modules/corex/corex_nio.h
>>
>>  3. git format-patch does not work,
>>
>> git format-patch
>>  [no-output]
>>
>>  4. Also tried,
>>
>> git format-patch master --stdout
>>  [no-output]
>>
>> git format-patch master --stdout > /tmp/nio.patch
>> [no-output]
>>
>>
>>  I don't know what is wrong, i have git version 1.7.10.4 on debian
>> wheezy.
>>
>> i miss subversion so badly...
>>
>>  Thank you.
>>
>>
>>
>>
>> On Tue, Aug 5, 2014 at 1:26 PM, Daniel-Constantin Mierla <
>> miconda at gmail.com> wrote:
>>
>>>  Can you do a commit on your local git clone and send the patch? It is
>>> easier to review the changes. Practically use:
>>>
>>> - git add -- to add new files
>>> - git commit -- to commit changes
>>> - git format-patch -- to get the commit in a file
>>>
>>> Cheers,
>>> Daniel
>>>
>>>
>>> On 05/08/14 01:14, Muhammad Shahzad wrote:
>>>
>>>  Done all changes as you suggested.
>>>
>>>  1. The code is embedded in corex module. Two new files added named,
>>> corex_nio.h and corex_nio.c. Some minor changes to corex_mod.c to call the
>>> methods defined in corex_nio.h.
>>>  2. Event route name changed to event_route[network:msg].
>>>  3. function name changed from is_msg_obfuscated to is_incoming.
>>>  4. one additional module parameter is added, named
>>> network_io_intercept, to enable disable the whole functionality. (default
>>> is disabled)
>>>  5. The README file and doc folder is updated with relevant
>>> documentation, examples and use cases etc.
>>>
>>> The code is available for review and download at,
>>>
>>> http://webrtc.voip-demos.com/corex.tbz2
>>>
>>>  Regarding the actual encryption / compression etc., i am planning to
>>> add some example PERL / LUA scripts later on.
>>>
>>>  Thank you.
>>>
>>>
>>>
>>>
>>> On Mon, Aug 4, 2014 at 8:19 PM, Muhammad Shahzad <shaheryarkh at gmail.com>
>>> wrote:
>>>
>>>>  Thank you for your valuable suggestions, i appreciate it.
>>>>
>>>> I agree about module name, in fact a couple friends have already sent
>>>> me email privately suggesting the same. May be something like
>>>> "nio_intercept" would be better, since module only intercepts the network
>>>> in/output and leaves it to script writer what to do with it.
>>>>
>>>>  Regarding embedding in corex, that is interesting, however i need to
>>>> go through its code to understand it a bit and then attempt to embed it.
>>>> Later on, i will create separate module which import this functionality
>>>> from corex and do specific tasks such as compression and faking http etc.
>>>>
>>>>  There is a good progress on doubango SDK side as well and at least
>>>> idoubs would be ready soon (7 to 10 days approx). Then mobile voip
>>>> developers can fully test this functionality at both ends.
>>>>
>>>>  Anyways let me look at corex module and see if and how can i embed
>>>> this. In the meantime more suggestions and comments on this are warmly
>>>> welcome from everyone.
>>>>
>>>> Thank you.
>>>>
>>>>
>>>>
>>>>
>>>> On Mon, Aug 4, 2014 at 7:55 PM, Daniel-Constantin Mierla <
>>>> miconda at gmail.com> wrote:
>>>>
>>>>> Hello,
>>>>>
>>>>> I looked at the code and my conclusion was that the name is a bit
>>>>> confusing.
>>>>>
>>>>> While indeed you can do obfuscation using some embedded language or
>>>>> other meanings from the config file, the module itself doesn't do anything
>>>>> related. It executes an event route for network packet in/out.
>>>>>
>>>>> Such functionaly is of course useful, just to remind the given example
>>>>> with obfuscation. But I think a better name to reflect the behaviour should
>>>>> be given.
>>>>>
>>>>> Maybe obfuscate should be a module that implement some algorithms for
>>>>> obfuscations, like you mentions:
>>>>> - simply compressing (gz)
>>>>> - compressing and encapsulation as body in a http request/reply
>>>>> - itv
>>>>>
>>>>> My proposal would be:
>>>>> - either rename the module or embed in another module (e.g., corex)
>>>>> what was developed for these event route execution. The event route name
>>>>> should be related to network reception/transmission (e.g., network:msg).
>>>>> Also the is_obfuscated_msg() should be something like is_incoming()
>>>>> - have a new module obfuscate to implement some algorithm as proof of
>>>>> concept (e.g., gzip -- i guess plenty of code from gzcompress module is
>>>>> very useful just to take from there). Then others may contribute more, as
>>>>> they have new ideas or from what you listed (http ecapsulation is at least
>>>>> interesting, considering many allow port 80 and inspect for http).
>>>>>
>>>>> Of course, these are my opinions, so the discussion can go on for
>>>>> deciding on how to proceed.
>>>>>
>>>>> Cheers,
>>>>> Daniel
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On 02/08/14 23:57, Muhammad Shahzad wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> As already discussed in detail in following email thread,
>>>>>>
>>>>>>
>>>>>> https://www.mail-archive.com/sr-users@lists.sip-router.org/msg19922.html
>>>>>>
>>>>>> The new Kamailio module obfuscate is ready for testing and can be
>>>>>> downloaded at,
>>>>>>
>>>>>> http://webrtc.voip-demos.com/obfuscate.tbz2
>>>>>>
>>>>>> It contains full code, with documentation and usage scenarios etc.
>>>>>>
>>>>>> Adding Kamailio dev team, can you guys review the code and add this
>>>>>> module to Kamailio trunk if possible? I will be responsible for its
>>>>>> maintenance and bug fixes etc. if any.
>>>>>>
>>>>>> Thank you.
>>>>>>
>>>>>>
>>>>>>
>>>>>   --
>>>>> Daniel-Constantin Mierla - http://www.asipto.com
>>>>> http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>>>>>
>>>>>
>>>>
>>>
>>> --
>>> Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>>>
>>>
>>
>> --
>> Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>>
>>
>
> --
> Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20140805/f05966d6/attachment-0001.html>


More information about the sr-dev mailing list