Proiect Individual - Individual Project: Firewall Frontend
Proiect Individual - Individual Project: Firewall Frontend
Proiect Individual - Individual Project: Firewall Frontend
Networking
Firewall frontend
Description: Implementing a frontend for firewall systems for either Linux or FreeBSD operating
systems.
Obserations:
It can be implemented on !indows" but the deployment should be for Linux or FreeBSD.
Features:
ease the definition of firewall rules#
usage of configuration files#
proides means to construct and compound libraries of common used rules#
user interface for rule building#
remote rules deployment#
$eferences:
Firewall
Iptables %% Linux firewall system
Ipfirewall %% FreeBSD firewall system
&'& FreeBSD Ipfw resources
Shorewall
Fire(OL
Firewall Builder
dwall
Firestarter
)*yFirewall
+byle
Fiaif
ferm
,uarddog
(LFL
ip-ungfu
)netfilter
Lo--it
.yroman
DHCP server with LDAP backend
Description: Implement a new D(/. serer or modify an existing one 01g. IS/ D(/. Serer2 to
support LD+. based configuration and lease database.
Lin-s:
D3S %% Domain 3ame System
4wisted3ames 4wisted 3ames
asic firewall i!"le!entation on N# "latfor!s
Description: Implement a firewall system for !indows 34 platforms 0e.g. !indows 5'''" 6." 5''7"
8ista2 using system%wide hoo-s at -ernel or user leel.
Obserations:
4he program must be a standalone executable 0natie code2.
9ou only need to write a basic firewall system" no traffic analysis is necessary.
:se only thread%safe code;
$iscellaneous
%P& &a!e 'ngine
Description: !rite or propose an implementation 0must assisted by a wor-ing" fully functional demo2
of a $., game engine.
Obserations:
4ry to use ob<ect oriented code.
4est carefully your program" ma-e sure no memory lea-s are present.
+ performance profile must be present in your paper" and comparisons with other engines of its
-ind.
Portable e(ecutable "acker
Description: !rite a small pac-er for .1s 0.ortable 1xecutables2. 9ou can use any compression library
at hand for the implementation part 0e.g. 3$8" L=*+" etc.2.
Obserations:
4ry to use assembler code for the stub.
4est carefully your program" ma-e sure no memory lea-s are present.
9our stub must decompress the program in memory" and execute it from there. Do not create a
temporary file on the dis-;
+ performance profile must be present in your paper.
inar) file "atcher
Description: !rite a small binary file patcher tool for your faourite operating system 0!indows >?@
or Linux%based2.
Obserations:
Implement a good algorithm for finding file changes.
4he program must be a standalone executable 0natie code2.
4he tool must hae a ,:I.
Auto!atic source code for!atting
Description: !rite a program with a ,:I that can reformat the source code of a programming language
automatically to include the correct indentation" spacing" etc. 4he syntax of the programming language
to format should be described in a simple text or 6*L%based file.
Obserations:
4he program must show the formatted output immediatly after it finishes.
4he program must be a standalone executable 0natie code2.
A si!"le Pascal co!"iler
Description: !rite a simple .ascal compiler" capable of producing executable source code. 4he .ascal
language syntax will be sent to you as part of the pro<ect specifications.
Obserations:
4he program needs to hae a minimal ,:I" capable of showing the .ascal program in a window
0SDI or *DI ,:I" you pic- one2.
4he program must be a standalone executable 0natie code2.
4he program must be capable of producing at least the eAuialent assembler instructions
corresponding to the instructions in the .ascal source code.
%eal #i!e *trateg) &a!e 'ngine
Description: Deelop an engine to simulate a real time strategy game world. !rite the
descriptionBspecification of the game world 0story" entities" interactions" etc.2 yourself.
Features:
4he architecture will be layered:
4he core is the engine which implements the rules of the world.
Interface to plug%in +Is.
Interface to plug%in ,:Is 0windows based B Direct6 based B Open,L based2.
4wo or more players will be supported.
4he game must end when a player accomplishes ictory conditions.
*ecurit)
$alicious "attern detection heuristics for "ortable e(ecutables
Description: !rite a program that can predict" based on a user%defined heuristics 0on top of a simple
heuristics engine2 if a .1 0.ortable 1xecutable2 file contains malicious patterns of code.
Obserations:
4ry to use ob<ect oriented code.
4est your program in irtual enironments.
Build rules for the heuristics engine based on the analysis of existing malicious patterns of code.
9ou can use the .1Cs I+4 0Import +ddress 4able2 information as well for the heuristics part.
.rogram must be a standalone executable 0natie code2 and the performance profile must be
also present in your paper.
*tatic anal)sis of e(ecutable files
Description: !rite a program that can detect multiple patterns of code within a single executable file.
4he program should list all patterns found and be as fast as possible.
Obserations:
9ou must use at least &'"''' patterns when testing the software.
$esponse time should be well under & second on an aerage &"D,(E /.:.
4he medium pattern length has to be at least 5D' bytes.
9ou can also use the 1. 01ntry .oint2 information from the executable header to determine the
physical offset where the search should begin.
.rogram must be a standalone executable 0natie code2.
Determine the performance profile of the tool by testing it throughly" and comment it in your
paper.
*tatistical log file anal)+er
Description: Implement a Bayesian /lassifier 0or a S8*B+33 based classifier2 for detecting networ-
intrusions and suspicious behaior based on the log files generated by arious programsBoperating
systemsBdeices.
BuEEwords:
+utomated 4ext /lassification
Bayesian Inference
+rtificial Intelligence
*achine Learning
Lin-s:
http:BBen.wi-ipedia.orgBwi-iB3aieFBayesFclassifier
http:BBen.wi-ipedia.orgBwi-iBSupportFectorFmachine
http:BBen.wi-ipedia.orgBwi-iBSyslog
,eb services and a""lications
#estare on-line
Descriere: Se urmGreHte realiEarea unei aplicaIii software pentru testarea automatG Hi on%line a unor
subiecIi.
/erinIe:
implementarea urmGtoarelor tipuri de teste:
grilG
rGspuns textual
rGspuns cod%sursG
interfaIG de administrare pentru:
utiliEatori Hi drepturi
teste %% conIinut Hi programarea lor
reEultate
notare automatG %% acolo unde este caEul
.ropus de: lect. dr. ,heorghe .etro
.rgani+area on-line a book!ark-urilor
Descriere: Se doreHte realiEarea unei aplicaIii web care sG permitG organiEarea on%line a boo-mar-%
urilor dierHilor utiliEatori.
/erinIe:
aplicaIie web%based
organiEare baEatG pe diferite criterii:
ontologii
etichete
adnotarea boo-mar-%urilor
parta<area Jntre utiliEatori a boo-mar-%urilor cKt Hi a adnotaIiilor aferente
exportarea Hi importarea Jn format 6*L a informaIiilor
implementarea unui !eb Serice care sG exporte un +.I 6*L minimal
$eferinIe:
*a.,nolia
.ropus de: lect. dr. ,heorghe .etro
,eb based shell
Descriere: Se doreHte realiEarea unei aplicaIii web care sG preEinte funcIionalitatea unui shell :3I6 B
Linux Jn linie de comandG.
/erinIe:
arianta +:
implementarea standardului 84&'' Jn cadrul browser%ului
comportament asemGnGtor cu +nyterm
arianta B:
trimiterea de script%uri
editare" salare" JncGrcare de script%uri
ersionarea script%urilor
posibilitatea de a le rula pe alte staIii decKt cea unde este serer%ul
exportul Hi importul 6*L a script%urilor
posibilitatea de a programa execuIia periodicG a script%urilor
$eferinIe:
+nyterm
.ropus de: lect. dr. ,heorghe .etro
.nline 'nglish dictionar)
Description: $e%implement http:BBdictionar.info.ut.ro using a modern programming language B
framewor-.
.roposed technologies:
.ython
$uby
$uby on $ails
D<ango
.(.
BuEEwords:
+L+6
!eb 5.'
A!a+on */ clone
Desription: Implement a web serice oriented" transactional" -ey%alue storage system# and a web
application that uses it.
Features:
transactional system with commit" rollbac-#
(44. based communication#
6*L andBor Lson reAuests and responses#
read%only $1S4 interface#
LaaScript library#
Obserations:
4he web serice and the web application can be seen as two distinct pro<ects 0if complex
enough2.
Lin-s:
+maEon S7
LSO3
$1S4
!eb serice
0$L based gatewa) for relational databases
Description: Implement a web serice oriented" gateway for relational databases. 4he Aueries should be
gien in 6*L format" using a custom built schema.
Features:
6*L based reAuests for describing relational Aueries# 0not SML wrapped inside an 6*L
message2#
6*L based responses for describing relational results#
(44. based communication#
$1S4 based :$L encoding#
database connection pooling#
0optional2 *essage Aueues based communication#
Lin-s:
$elational database
6*L
$1S4
sAl$1S4
SO+. SML
!S%LDB/
Oracle 6SML Serlet
SoapData
!eb serice
*essage Aueue
Obserations:
4he gateway could be built only for a specific database" or on top of LDB/.
0$L based gatewa) for 0$L databases
Description: Implement a web serice oriented" gateway for 6*L databases. 4he Aueries should be
issued as 6*L" or specific 6Muery B 6.ath wrapped inside 6*L.
Features:
6*L based Auery language 0either specific 6*L language" or 6Muery B 6.ath wrapped inside
an 6*L reAuest2#
(44. based communication#
$1S4 based :$L encoding#
0optional2 *essage Aueues based communication#
Lin-s:
6*L database
6*L
6.ath
6Muery
$1S4
Ber-eleyDB 6*L
*essage Aueue
!eb serice
#e0 1 La#e0 based ,iki
Description: Implement a 4e6 B La4e6 based !i-i" that would allow the users to write pages B articles
using the 4e6 B La4e6 syntax.
Features:
!eb based user interface#
6*L based publication B retrieal +.I oer (44.#
content ersioning#
concurrent editing#
ability to iew pages B articles either as (4*L or .DF.
Lin-s:
!i-i
4e6
La4e6
$eision control
Latex-i
An instant !essenger using web services
Description: !rite an instant messenger system using web serices 0e.g. SO+." etc.2. /omment in your
paper the choice of the protocol" as well as the adantages and disadantages of using it.
Obserations:
4he program needs to hae a ,:I.
4he program can be either bytecode or natie code 0Laa code is accepted2.
4he program must maintain a list of NonlineN users" but it is up to you to establish the serer
communication protocol 0howeer" we must agree on it before implementing it2.
C1C22 "rojects
,eb3it based web browser for Linu(
Description: Deelop a web browser using the existing Mt or ,4) port for !eb)it for Linux 0or an
operating system of your choice2.
Features:
minimal web browser features#
Lin-s:
!eb)it
*idori
/D chess ga!e
Description: Deelop a chess game with a 7D ,:I.
Features:
+I player with *4D0f2 or better algorithm#
graphics done with Open,L.
%eversi ga!e
Description: Deelop a $eersi game with a ,:I.
Features:
+I player#
graphics done with Open,L.
Progra!!ing languages
LL4$ based "roject
Description: /reate a pro<ect that uses the LL8* language and assembler.
Obserations:
4he pro<ect could be a compiler for an existing language 0.ascal" /" etc.2
Lin-s:
LL8* %% Low Leel 8irtual *achine
Lis" to P)thon translator
Description: Implement a Lisp5.ython pac-age. 4his pac-age should parse Lisp code and transform it
to /.ython +S4 using the /.ython compiler pac-age.
Lin-s:
http:BBdocs.python.orgBlibBcompiler.html
5ava technologies
Description: +ll the following pro<ects are centered on a Laa technology. 4hus the main purpose each
of the pro<ect is to use that technology in an application that best suites the technology.
Obserations:
For the L*S and LFS there are multiple implementations aailable" and so multiple choices
should be analyEed and the decision should be described and argumented in the documentation.
5ini based "roject
Lin-s:
Lini %% !i-ipedia
Lini %% main site
5ava $essage *ervice based "roject
Description: 4ry to design and implement a system that should sole a real world problem" by
effectiely using the L*S technology to achiee its goals.
Lin-s:
L*S %% Laa *essage Serice
*essage Aueue
1D+ %% 1ent Drien +rchitecture
S1D+ %% Staged 1ent Drien +rchitecture
.ublish B subscribe model
*essage Oriented *iddleware
Software agent
5ava *erver Faces based "roject
Lin-s:
LSF %% Laa Serer Faces
LSF /omparison *atrix
LSF 4utorials
5AD' based "roject
Description: 4ry to design and deelop system that soles a real wold or simulated problem" by using
an multi%agent approach and implementing a solution in Laa with the help of L+D1 framewor-.
Obseration:
4he problem to be soled could also be more closer to distributed computing" but using L+D1
<ust as a communication framewor-.
Lin-s:
L+D1 %% Laa +gent Deelopment Framewor-
+gent based model
Software agent
Distributed computing
Social simulation
Databases
%elational database to object !a""ing
Description: Implement an ob<ect relational mapping system for the language of your choice 0could be
/B/@@" Laa" .ython" $uby" .(." etc.2
Features:
mandatory mapping features:
table columns %O ob<ect fields" setters" getters or similar
one to many" many to one relations %O lists of ob<ects and ob<ect fields
0optional2 inheritance mapping
it should allow ob<ects to be obtained also from Aueries
mapping description could be done:
external to the source code %% by using description files 06*L" LSO3" custom built.2
internal to the source code %% by using annotations if the chosen language allows it.
database schema creation based on the mapping description
0optional2 database schema update based on the mapping description
the usage of the framewor- should be ery light and as transparent as possible 0it could imply
using byte code instrumentation if your language allows it2
Lin-s:
O$* %% Ob<ect relational mapping
+nnotation
B/1L %% Byte /ode 1ngineering Library
Laa persistence framewor-s
(ibernate
%elational database sche!a definition language
Description: Define a high leel language for describing relational database schema. Implement a
transformer that reads the custom build language and translates it to different SML dialects.
Features:
possibility to define all the usual entities and constructs:
schemas#
tables#
domains#
constraints#
indexes#
iews#
seAuences#
0optional2 stored procedures#
possibility to create SML scripts for at least 7 different databases 0for example .ostgreSML"
SMLSerer and *ySML2#
Lin-s:
+pache Db:tils
Associative !odel of data
Description: Define an application that uses the associatie model of data to model data" and then
implement it by using the +*D engine to store and Auery data.
Lin-s:
+*D %% +ssociatie *odel of Data
Proiecte cu caracter econo!ic
Fiecare dintre ur!6toarele "roiecte "oate fi ales de c6tre !a(i!u! doi studen7i8 0.roiectele or fi
acordate pe principiul FIFO %% primul sosit, primul servit.2
Cerin7e generice:
utiliEarea unui sistem de baEe de date relaIional orientat client%serer 0exclus +ccess2# sau
utiliEarea unui sistem de baEe de date 6*L#
interfaIG graficG pentru operaIiile necesare %% natiG ori web#
exportul rapoartelor Jntr%un format electronic independent 0.DF" 1xcel" (4*L" etc.2
importul B exportul de date Jn format 6*L#
implementarea unui !eb Serice care sG exporte un +.I 6*L minimal#
Descriere:
+plicaIie software eidenIa personalului Jn contextul unui agent economic.
+plicaIie software pentru gestiunea relaIiei personalului cu /asa de .ensii Jn ederea generGrii
formatelor de raportare electronice spre /asa de .ensii" a calculului contribuIiei personalului
pentru pensie si asigurari sociale.
+plicaIie software pentru gestiunea relatiei cu Inspectoratul 4eritorial de *unca 0contracte
inididuale de munca" deciEii de concediere" acte aditionale la contractile indiiduale de munca"
state de plata pentru un organism economic2.
+plicaIie software pentru gestiunea stocurilor.
+plicaIie software pentru gestiunea elementelor patrimoniale.
+plicaIie software pentru gestiunea financiar%contabilG a producIiei.
+plicaIie software pentru urmGrirea fluxului tehnologic" precum Hi eidenIa stocurilor de
materiale" a intrGrilor Hi ieHirilor de materiale.
+plicaIie software pentru normarea Hi calcul salariilor Hi a impoEitului Jn edearea gestionGrii
automate a salariaIiilor Hi a modului de platG a acestora din prisma unui agent economic.
+plicaIie software pentru eidenIa fondului de bibliotecG" Hi anume a Jmprumuturilor Hi
returnGrii de cGrIi cGtre" respecti de la" persoane.
+plicaIie software care sG gestioneEe raportGrile cGtre /asa 3aIionalG de +sigurari de SGnGtate.
+plicaIia a trebui sG ofere posibilitatea salGrii informaIiilor despre persoanele asigurate Hi
iEualiEarea asiguraIilor dupG anumite criterii. InformaIiile despre persoanele asigurate or fi
grupate pe luni" Hi or conIine informaIii complete despre anga<at" anga<ator" cKt Hi sumele ce
trebuie plGtite pe parcursul lunii curente. Pn acest sens" aplicaIia a permite actualiEarea unei
anexe" cu informaIiile necesare" stocarea informaIiilor dupG o erificare prealabilG a
corectitudinii acestora" cKt Hi o iEualiEare ulterioara a informaIiilor stocate.
LegGturi:
1conomia Jntreprinderii
6*L%$./
.ropuse de: lect. dr. ,heorghe .etro
File s)ste!s
File s)ste! bench!ark
Description: Design and deelop a file system benchmar- that should eidenciate the performance of
different file system operations.
Lin-s:
Benchmar-
IOEone
FFSB %% Flexible File System Benchmar-
erkele) D backed file s)ste!
Description: Implement a F:S1 based file system that uses as storage bac-%end a Ber-eleyDB
database.
Lin-s:
F:S1 %% File system in user%space
Ber-eley DB
'ncr)"ted file s)ste!
Description: Implement a F:S1 based file system that exports an encrypted file system.
Lin-s:
F:S1 %% File System in user%space
Deniable encryption
.lausible deniability
.honeBoo- FS
$uberhose FS
/ryptographic file systems
#ransactional file s)ste!
Lin-s:
8ista 4ransactional File System
4echnical Specification for a .rotected 3on%8olatile $+* File System
Search
F:S1 %% File System in user%space
ittorrent fils)ste!
Description: Implement a F:S1 filesystem for downloadingBsharing Bit4orrent Data. Some of the uses
of this file system would be Operating System Image Deployment" easy interface to bittorrent.
Lin-s:
Bit4orrent / Library
Laa Bittorrent +.I
F:S1 %% File System in user%space
Data structures
In-!e!or) transactional data structures
Description: /reate a library which allows the user to manipulate a data structure in a transactional
manner. 4hat is the user can create a transaction and when the transaction ends:
the modifications are persistent 0the commit operation2
the modifications are reerted 0the rollbac- operation2
4he data structure could be an association table implemented either as an ordered tree or a hash table.
Features:
the transactions must hae the +/ID properties#
0optional2 the data structure should be saed and loaded to B from a permanent storage#
0optional2 the transactions could be nested#
Lin-s:
LDB*
Ber-eley DB
+/ID
Distributed hash tables
Lin-s:
Distributed hash table
A co!"ression "rogra!
Description: !rite a program that acts li-e an archier 0e.g. =I." $+$" etc.2. :se any compression
algorithm you prefer 0adaptie (uffman" $L1" L=!" etc.2 % you must implement the algorithm on your
own; %" but we must agree oer it before the actual implementation begins. +n archie file must be
designed so that it may contain seeral files at once 0at least &"'5Q files must be supported inside an
archie2.
Obserations:
:se only a natie code compiler for the implementation 0no bytecode allowed2.
+ ,:I must be built for the program.
9ou must include a performance profile of the archier in your paper" as well as comparisons
with similar existing solutions 0!in=ip" !in$+$" !in+/1" etc.2.
Protocol i!"le!entations
099 "rotocol i!"le!entation
Description: Deelop a library that should allow a client to communicate with an 6 serer through
4/.BI. %% the library should implement the 6&& core protocol and not be wrapper to 6lib. +lso
implement a simple application that demonstrates the libraries capabilities.
Lin-s:
6 !indow System
6 !indow System protocols and architecture
6 !indow System core protocol
6&&$R.' .rotocol
$F/ &'&7 %% 6 !indow System .rotocol &&
*i!ulators
*i!ularea o"eratorilor !odelului rela7ional
Descriere: Se doreHte realiEarea unei aplicaIii software care sG ilustreEe modul Jn care funcIioneaEG
operatorii modelului relaIional:
selecIia#
proiecIia#
legGtura#
.recum Hi a operatorilor pe mulIimi 0Jn contextul modelului relaIional2:
intersecIia#
reuniunea#
diferenIa#
/erinIe:
aplicaIie interactiG:
utiliEatorul putKnd intereni Jn orice pas al simulGrii#
utiliEatorul are posibilitatea de a propune operaIii sau JnlGnIuiri de operaIii pentru
simulare#
simularea paHilor %% adicG preEentarea dierselor tehnici Hi a reEultatelor intermediare" nu numai
a reEultatelor finale
simulare graficG
0opIional2 utiliEarea unei surse de date specificate de utiliEator %% baEe de date existente" dar de
dimensiune micG.
.ropus de: lect. dr. ,heorghe .etro
,eb interface based on %ub) on %ails for a P s)ste! si!ulator
Lin-s:
.Systems %% I1+4 site
.System %% !i-ipedia site
Linden!a)er s)ste!s generator
Description: L%Systems are used to draw recursie structures 0for example fractals that loo- li-e plats"
Sierpins-i triangles" etc.2
$eAuests:
formal generation: generating the character string that could be obtained after n iterations#
graphic generation: drawing an L%System by using Nturtle graphicsN#
0optional2 optimiEation methods for generating and drawing of L%Systems.
Lin-s:
L%System
oolean satisfiabilit) "roble!
Introduction: Satisfiability is the problem of determining if the ariables of a gien Boolean formula
can be assigned in such a way as to ma-e the formula ealuate to 4$:1. 1Aually important is to
determine whether no such assignments exist" which would imply that the function expressed by the
formula is identically F+LS1 for all possible ariable assignments. In this latter case" we would say
that the function is unsatisfiable# otherwise it is satisfiable. 4o emphasiEe the binary nature of this
problem" it is freAuently referred to as Boolean or propositional satisfiability. 4he shorthand NS+4N is
also commonly used to denote it" with the implicit understanding that the function and its ariables are
all binary%alued.
Lin-s:
Boolean satisfiability problem
Hard instance generator
Description: Implement an hard" random instance generator for 7%S+4 0or generally for -%S+42. 4he
generated instances should be generated in DI*+/S format.
Lin-s:
http:BBwww.cs.rochester.eduBuB-autEBtal-sBaaai5'''%generate%sat.ppt
http:BBwww.is.titech.ac.<pBSwatanabeBgensatBindex.html
hgen5 hard instance generator
.hase transitions in S+4 % +n instance exhibits a sharp transition from satisfiable to
unsatisfiable problems at a critical alue 0the phase transition2
http:BBciteseer.ist.psu.eduB5TQDRT.html
http:BBwww.springerlin-.comBcontentBgQ<?'lmbpf7he-B
4he phase transition in &%in%- S+4 and 3+1 7%S+4