Umit

Umit
Showing posts with label gsoc google umit summer code. Show all posts
Showing posts with label gsoc google umit summer code. Show all posts

Wednesday, June 25, 2008

Umit's Manipulations of Packets Art

Umit's Manipulations of Packets Art (UMPA in shortcut) is a new library provided by Umit Project.

This library is being developed during Google Summer Of Code 2008 [0] by myself. I'm going to introduce you in this project in this and probably next articles. Enjoy your reading!

Packet Manipulation

There is a lot of practicable for manipulation of packets. It's really important for administrators, hackers etc. If you want to research a network and how it works, sometimes you have to send some specific packets.

There are some applications like hping[1], impacket[2] or scapy[3] which give you some hand with it. So, why yet another tool for this job? Well, there are a lot of common issues with them. Dissatisfied licencse, poor abilities, unmaintainable code etc. So the fact is, there isn't any solid, easy to use and useful application which helps you control your packets over network.

And that's why Umit is going to provide another library for packets manipulation. In a wider range than it was done so far, with nice API and front-end for Umit's users.

Of course there was a discussion about reasons to write completely new library and maintain some existing code. At last we decided that the best option for Umit Project and all of you, is to write our own library.

Features

Ok, so I'm developing a backend for packet manipulation, with really funny name UMPA ;-) Now, I will say a bit about features which will be provided. The library is splitted on 3 modules.

  1. CORE (with main API)
  2. PROTOCOLS
  3. EXTENSIONS

You will use all of them, and you can easiy extend the last 2. PROTOCOLS is a module with one main class for any protocols and some predefined PROTOCOLS (like IP, TCP, SMTP, etc.). So you can easily build your packets with those protocols (by including every single protocols in other one). In fact, you will get layered packets. If you missed any protocols, you would simple write new protocols by subclassing main class and extending your new class.

Ok, so we have got a brief introduction about building packets. Exluding some standard actions (like setting source address up) I will be able to do a bit more. First of all, you can manipulate packets in 2 ways. Single bit manipulation and field manipulation. Of course some fields will be auto-generated (like checksums), but at least you will be able to modify them as well. Another feature is auto-filling fields (what I described above on the checksum example). There will be templates system. You can create a template of your packets, for dynamic generating of new packets. This template system will allow to iterate over values, use conditions etc. And it will be really powerful with our sniffing feature. Yep, I'm going to add sniffing system (using libpcap). So finally, your packets will be intelligent. Cause they will generate values from fields depending on receiving packets. All of this is what I called EXTENSIONS. And I hope, you will write some others useful extensions and share with all of us. There are some other of them which I will develop in the future. Like template-wizard etc.

Ok, that is everything for this time. If you have any suggestions, or if you want just write your opinion about this library, feel free to write me an email.

References

Sunday, May 25, 2008

Preferences Window and Independent Features

Last year I was a student that development Interface Editor. It's not implemented on Umit but I hope that in the next two months my project and others like umitMapper and NetworkInventory will be there.

This week began officially Google Summer Code 2008.

So what's come from me this Summer?

I don't know if all of you know but Umit is a (powerful and it'll become more, I hope) interface of Nmap. Nmap is a port scanner. So work on Umit is help nmap users, we're working for the nmap interface remmember? Goal of Umit is create a usability, portable and nice front-end scanner. All network admin should be able to have the most and filtered information that they need, using Umit.


What's matter?
- Preferences Window
- Interface Editor (bug fixing and some improvements)
- Independent Features

Preferences Window:
- Well today all applications have Preferences encapsulated on a box. Umit not have this yet. It's my main goal build a box that contents all configuration of Umit (only the configs that make sense).
- Proxy config (may be include a study around proxychains)
- Fonts configuration
- Expose of Windows (It's adding new features to InterfaceEditor)
- Diff color configuration
- Tabs (able to Open in different window )
- Configuration files directories
- Auto-save scans option
- Add more features that I don't list yet. (...)
Requirement: Consult frequently HIG.

Interface Editor: During and after integration I'll make bug fixing and improvements on it.

Indepedent Featuatures:
- MacPorts - portfile
- Ubuntu/Debian package ( Umit comes to Ubuntu/Debian )
- RPM package ( Fedora package )
- Script to build automatic Ubuntu and Fedora Packages
- Some improvements on Umit after and during Integration
- Update and create useful Profiles and may be some integration with NSE scripts (Parser NSE was make by Max last GSoC)
- Write decent documentation
- Create a easy way to user can have more help (Something like Umit Assistant)
- Work in what have major priority



If you have some ideas, features that you think that is nice bet for Umit let me know, please.

Project Page:

http://trac.umitproject.org/wiki/PreferencesWindow

Timeline:

http://trac.umitproject.org/wiki/PreferencesWindow/Timeline


Good luck for all.

Monday, April 21, 2008

Ladies and Gentlemen, the selected students for GSoC 2008 are...

This year, Umit received 5 slots! It is less than last year, but as the number of organizations has increased to 175 (last year Google sponsored 130) and the number of slots have not grown accordingly, it was expected that we wouldn't have the same 7 slots that we had last year.
The selection phase this year was improved, and we primed for students efforts and interaction with communities. From the selection phase, Umit was translated to 6 new languages, and Umit's website was translated to 4 new languages. Also, we had a lot of patches sent by proponents, documentations, usability improvements and all sort of contributions that an open source project would like to have. Based on each student dedication, I have ranked them. up or down Unfortunatelly, as we can't have infinit slots for every dedicated students we had, we had to leave some good folks behind this year.
I encourage every student that was not accepted this year to stay with us, and keep contributng just as you did during the selection phase. That will totally rank you up for next year. Being an active contributor to Umit without being a SoCer is a huge sign of dedication to the project. The next Umit release will feature the name of every proponent that has contributed this year, and I'll keep giving credits to all of you who keep contributing to the project despite not being a 2008's SoCer.


Here follows the selected students for GSoC 2008 at Umit Project:

  • Bartosz Adam Skowron (Wroclaw University Of Technology, Poland) - Bartosz is going to write the backend for the Packet Manipulation Interface. He has been very dedicated to Umit, and his goal is to use the odds of his project in his Master Theses.
  • Devtar Singh (Multimedia University, Malacca, Malaysia) - He proves that being dedicated to the project without being a SoCer is a huge plus. Devtar was not selected last year as student, but he kept along with us learning the stuffs he would need to participate this year. He is going to work on Bluetooth scan, Vulnerabilities database system and some independent features.
  • Francesco Piccinno (Università degli studi di Milano, Italy) - Francesco is very excited about participating this year, and he is going to work on Plugins for Umit and a beautiful frontend for the Packet Manipulation Interface. He has already put some effort on improving Umit's usability, and has shown the desirable dedication we have expected for a selected student.
  • Luis Antonio Bastiao Silva (University of Aveiro, Portugal) - Luis is one of our successful students from last year, and he created the Interface Editor, which lets Umit's user to edit and customize the Umit's wizard and profile editor interfaces. This year he came for a second round, aiming to deliver the Interface Editor improved, integrate it to Umit main interface, create a powerful Preferences Window and work on independent features in the left hours. Luis has been an example for other students, as he kept himself a regular commiter after GSoC, and leaded the creation and development of our new website.
  • Rodolfo da Silva Carvalho (Wizard English Courses, Goiania, Brazil) - Rodolfo is another super success that worked with us last year. He is responsible for our lovely UmitWeb interface, and is back for a second round improving it and working on independent features. He worked with Luis on our new website, and has always been very dedicated to the project.

Our development is going to take place on umit-devel mailing list, and everyone is invited to help us and participate on development there. Nmap has received it's own slots as well, and they are willing to put some effort on improving Zenmap (A Umit's fork). We're looking forward to help each other on the task of improving these great Nmap interfaces, and make network admins lifes easier. Join us welcoming these talented students!

Tuesday, March 18, 2008

Umit is in!

Not it is official: Umit is going to participate this year as a mentoring organization!

Get ready folks, there is a lot to do this year! Get inspiration here and start writing your proposal. If you need help, try our IRC channel at freenode, or our mailing lists.

Hurry! Applications have to be submitted by 24th to 31th March! Hope to have you with us this year.