define obfuscation
Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 1964
B::Deobfuscate 0.18
B::Deobfuscate Perl module contains the deobfuscate source code. more>>
B::Deobfuscate Perl module contains the deobfuscate source code.
SYNOPSIS
perl -MO=Deobfuscate,-csynthetic.yml,-y synthetic.pl
B::Deobfuscate is a backend module for the Perl compiler that generates perl source code, based on the internal compiled structure that perl itself creates after parsing a program. It adds symbol renaming functions to the B::Deparse module. An obfuscated program is already parsed and interpreted correctly by the B::Deparse program. Unfortunately, if the obfuscation involved variable renaming then the resulting program also has obfuscated symbols.
This module takes the last step and fixes names like $z5223ed336 to be a word from a dictionary. While the name still isnt meaningful it is at least easier to distinguish and read. Here are two examples - one from B::Deparse and one from B::Deobfuscate.
Initial input
if(@z6a703c020a){(my($z5a5fa8125d,$zcc158ad3e0)=File::Temp::tempfile(
UNLINK,1));print($z5a5fa8125d "=over 8nn");(print($z5a5fa8125d
@z6a703c020a)or die(((("Cant print $zcc158ad3e0: $!"))); print($z5a5fa8125d
"=backn");(close(*$z5a5fa8125d)or die(((("Cant close ".*$za5fa8125d.": $!")
));(@z8374cc586e=$zcc158ad3e0);($z9e5935eea4=1);}
After B::Deparse:
if (@z6a703c020a) {
(my($z5a5fa8125d, $zcc158ad3e0) = File::Temp::tempfile(UNLINK, 1));
print($z5a5fa8125d "=over 8nn");
(print($z5a5fa8125d @z6a703c020a)
or die((((q[Cant print ] . $zcc158ad3e0) . : ) . $!)));
print($z5a5fa8125d "=backn");
(close(*$z5a5fa8125d)
or die((((q[Cant close ] . *$za5fa8125d) . : . $!)));
(@z8374cc586e = $zcc158ad3e0);
($z9e5935eea4 = 1);
}
After B::Deobfuscate:
if (@parenthesises) {
(my($scrupulousity, $postprocesser) = File::Temp::tempfile(UNLINK, 1));
print($scrupulousity "=over 8nn");
(print($scrupulousity @parenthesises)
or die((((q[Cant print ] . $postprocesser) . : ) . $!)));
print($scrupulousity "=backn");
(close(*$scrupulousity)
or die((((q[Cant close ] . *$postprocesser) . : ) . $!)));
(@interruptable = $postprocesser);
($propagandaist = 1);
}
Youll note that the only real difference is that instead of variable names like $z9e5935eea4 you get $propagandist.
<<lessSYNOPSIS
perl -MO=Deobfuscate,-csynthetic.yml,-y synthetic.pl
B::Deobfuscate is a backend module for the Perl compiler that generates perl source code, based on the internal compiled structure that perl itself creates after parsing a program. It adds symbol renaming functions to the B::Deparse module. An obfuscated program is already parsed and interpreted correctly by the B::Deparse program. Unfortunately, if the obfuscation involved variable renaming then the resulting program also has obfuscated symbols.
This module takes the last step and fixes names like $z5223ed336 to be a word from a dictionary. While the name still isnt meaningful it is at least easier to distinguish and read. Here are two examples - one from B::Deparse and one from B::Deobfuscate.
Initial input
if(@z6a703c020a){(my($z5a5fa8125d,$zcc158ad3e0)=File::Temp::tempfile(
UNLINK,1));print($z5a5fa8125d "=over 8nn");(print($z5a5fa8125d
@z6a703c020a)or die(((("Cant print $zcc158ad3e0: $!"))); print($z5a5fa8125d
"=backn");(close(*$z5a5fa8125d)or die(((("Cant close ".*$za5fa8125d.": $!")
));(@z8374cc586e=$zcc158ad3e0);($z9e5935eea4=1);}
After B::Deparse:
if (@z6a703c020a) {
(my($z5a5fa8125d, $zcc158ad3e0) = File::Temp::tempfile(UNLINK, 1));
print($z5a5fa8125d "=over 8nn");
(print($z5a5fa8125d @z6a703c020a)
or die((((q[Cant print ] . $zcc158ad3e0) . : ) . $!)));
print($z5a5fa8125d "=backn");
(close(*$z5a5fa8125d)
or die((((q[Cant close ] . *$za5fa8125d) . : . $!)));
(@z8374cc586e = $zcc158ad3e0);
($z9e5935eea4 = 1);
}
After B::Deobfuscate:
if (@parenthesises) {
(my($scrupulousity, $postprocesser) = File::Temp::tempfile(UNLINK, 1));
print($scrupulousity "=over 8nn");
(print($scrupulousity @parenthesises)
or die((((q[Cant print ] . $postprocesser) . : ) . $!)));
print($scrupulousity "=backn");
(close(*$scrupulousity)
or die((((q[Cant close ] . *$postprocesser) . : ) . $!)));
(@interruptable = $postprocesser);
($propagandaist = 1);
}
Youll note that the only real difference is that instead of variable names like $z9e5935eea4 you get $propagandist.
Download (0.017MB)
Added: 2007-06-26 License: Perl Artistic License Price:
854 downloads
Define Word 0.7.0 for Firefox
Define Word is an extension which allows you to look up definition of selected text. more>>
Define Word is an extension which allows you to look up definition of selected text.
Look up definition of selected text using any of several search engines. The list of engines is configurable.
<<lessLook up definition of selected text using any of several search engines. The list of engines is configurable.
Download (0.008MB)
Added: 2007-04-17 License: MPL (Mozilla Public License) Price:
922 downloads
Speegle Define 1.1
Speegle Define is a Firefox extension that gives a spoken definition of a word using Speegle Speech Technology. more>>
Speegle Define is a Firefox extension that gives a spoken definition of a word using Speegle Speech Technology. You highlight the word you would like explained with highlight left click on any internet page you are reading.
Right click and choose "Audio Definition" from the pop up menu and its definition will be read back to you in English through your speakers or headphones.
<<lessRight click and choose "Audio Definition" from the pop up menu and its definition will be read back to you in English through your speakers or headphones.
Download (0.004MB)
Added: 2007-06-02 License: MPL (Mozilla Public License) Price:
874 downloads
Natrium Engine Beta01
Natrium Engine tracks groups of parts by letting users define the relationships between parts. more>>
Natrium Engine project tracks groups of parts by letting users define the relationships between parts. Users create definitions for configurations and parts.
These are joined together to form a rule for parts in configurations. When a part is removed from or added to a configuration, all children of that part are also transferred. This has special applications to "living" inventory, or groups of disparate parts that need to be tracked as a group rather than individually.
For example, if a carburetor is made a separate configuration from an engine, then when removing it all parts associated with the carburetor are also removed. A facility is provided for tracking user-defined line-item costs of each part.
<<lessThese are joined together to form a rule for parts in configurations. When a part is removed from or added to a configuration, all children of that part are also transferred. This has special applications to "living" inventory, or groups of disparate parts that need to be tracked as a group rather than individually.
For example, if a carburetor is made a separate configuration from an engine, then when removing it all parts associated with the carburetor are also removed. A facility is provided for tracking user-defined line-item costs of each part.
Download (0.10MB)
Added: 2006-03-07 License: GPL (GNU General Public License) Price:
1335 downloads
Data::Region 1.0
Data::Region Perl module can define hierarchical areas with behaviors. more>>
Data::Region Perl module can define hierarchical areas with behaviors.
SYNOPSIS
use Data::Region;
$r = Data::Region->new( 8.5, 11, { data => PageObj->new() } );
$r->data( PageObj->new() );
foreach my $c ( $r->subdivide(2.5,3) ) {
$a = $c->area(0.25,0.25, 2.25,2.75);
$a2 = $c->area(0.25,0.25, -0.25,-0.25); # as offset from lower right
($t,$m,$b) = $a->split_vertical(2,5,1); # sequential heights
($t,$m,$b) = $a->split_vertical_abs(0,2,7); # absolute offsets
($l,$r) = $a->split_horizontal(2); # $l gets width of 2, $r gets the rest
my($x1,$y1,$x2,$y2) = $a->coords();
my $data = $a->data(); # data inherits from parent, if not set
$a->action( sub { $data->setfont("Times-Bold", 10);
$data->text($x1,$y1, "Some Text");
$data->line( $_[0]->coords() ); # the non-closure way
} );
}
$r->render(); # heirarchically perform all the actions
# Get some info about a region:
($w,$h) = ( $a->width(), $a->height() );
($x1,$y1, $x2,$y2) = $a->coords();
($x1,$y1) = $a->top_left();
($x2,$y1) = $a->top_right();
($x1,$y2) = $a->bottom_left();
($x2,$y2) = $a->bottom_right();
Data::Region allows you to easily define a set of nested (2-dimensional) areas, defined by related coordinates, and to associate actions with them. The actions can then be performed hierarchically from any root of the tree.
Data::Region was written to provide an easy way to do simple page layout, but has, perhaps, more general uses.
<<lessSYNOPSIS
use Data::Region;
$r = Data::Region->new( 8.5, 11, { data => PageObj->new() } );
$r->data( PageObj->new() );
foreach my $c ( $r->subdivide(2.5,3) ) {
$a = $c->area(0.25,0.25, 2.25,2.75);
$a2 = $c->area(0.25,0.25, -0.25,-0.25); # as offset from lower right
($t,$m,$b) = $a->split_vertical(2,5,1); # sequential heights
($t,$m,$b) = $a->split_vertical_abs(0,2,7); # absolute offsets
($l,$r) = $a->split_horizontal(2); # $l gets width of 2, $r gets the rest
my($x1,$y1,$x2,$y2) = $a->coords();
my $data = $a->data(); # data inherits from parent, if not set
$a->action( sub { $data->setfont("Times-Bold", 10);
$data->text($x1,$y1, "Some Text");
$data->line( $_[0]->coords() ); # the non-closure way
} );
}
$r->render(); # heirarchically perform all the actions
# Get some info about a region:
($w,$h) = ( $a->width(), $a->height() );
($x1,$y1, $x2,$y2) = $a->coords();
($x1,$y1) = $a->top_left();
($x2,$y1) = $a->top_right();
($x1,$y2) = $a->bottom_left();
($x2,$y2) = $a->bottom_right();
Data::Region allows you to easily define a set of nested (2-dimensional) areas, defined by related coordinates, and to associate actions with them. The actions can then be performed hierarchically from any root of the tree.
Data::Region was written to provide an easy way to do simple page layout, but has, perhaps, more general uses.
Download (0.008MB)
Added: 2007-08-03 License: Perl Artistic License Price:
812 downloads
DFA::Kleene 1.0
DFA::Kleene is a Kleenes Algorithm for Deterministic Finite Automata. more>>
DFA::Kleene is a Kleenes Algorithm for Deterministic Finite Automata.
Calculates the "language" (set of words) accepted (= recognized) by a Deterministic Finite Automaton.
SYNOPSIS
use DFA::Kleene qw(initialize define_accepting_states define_delta kleene example);
use DFA::Kleene qw(:all);
&initialize(6,"ab");
Define the number of states (state #1 is the "start" state!) of your Deterministic Finite Automaton and the alphabet used (as a string containing all characters which are part of the alphabet).
&define_accepting_states(2,3,4,5);
Define which states are "accepting states" in your Deterministic Finite Automaton (list of state numbers).
&define_delta(1,a,4);
Define the state transition function "delta" (arguments are: "from" state, character (or empty string!) read during the transition, "to" state).
You need several calls to this function in order to build a complete transition table describing your Deterministic Finite Automaton.
@language = &kleene();
Returns a (sorted) list of regular expressions describing the language (= set of patterns) recognized ("accepted") by your Deterministic Finite Automaton.
&example();
Calculates the language of a sample Deterministic Finite Automaton.
Prints a (sorted) list of regular expressions which should be equivalent to the following regular expression:
(a(a)*b)*a(a)*(b)*
This is the same as
((a+)b)*(a+)b*
The routines in this module allow you to define a Deterministic Finite Automaton and to compute the "language" (set of "words" or "patterns") accepted (= recognized) by it.
Actually, a list of regular expressions is generated which describe the same language (set of patterns) as the one accepted by your Deterministic Finite Automaton.
The output generated by this module can easily be modified to produce Perl-style regular expressions which can actually be used to recognize words (= patterns) contained in the language defined by your Deterministic Finite Automaton.
Other modules in this series (variants of Kleenes algorithm):
Math::MatrixBool (see "Kleene()")
Math::MatrixReal (see "kleene()")
<<lessCalculates the "language" (set of words) accepted (= recognized) by a Deterministic Finite Automaton.
SYNOPSIS
use DFA::Kleene qw(initialize define_accepting_states define_delta kleene example);
use DFA::Kleene qw(:all);
&initialize(6,"ab");
Define the number of states (state #1 is the "start" state!) of your Deterministic Finite Automaton and the alphabet used (as a string containing all characters which are part of the alphabet).
&define_accepting_states(2,3,4,5);
Define which states are "accepting states" in your Deterministic Finite Automaton (list of state numbers).
&define_delta(1,a,4);
Define the state transition function "delta" (arguments are: "from" state, character (or empty string!) read during the transition, "to" state).
You need several calls to this function in order to build a complete transition table describing your Deterministic Finite Automaton.
@language = &kleene();
Returns a (sorted) list of regular expressions describing the language (= set of patterns) recognized ("accepted") by your Deterministic Finite Automaton.
&example();
Calculates the language of a sample Deterministic Finite Automaton.
Prints a (sorted) list of regular expressions which should be equivalent to the following regular expression:
(a(a)*b)*a(a)*(b)*
This is the same as
((a+)b)*(a+)b*
The routines in this module allow you to define a Deterministic Finite Automaton and to compute the "language" (set of "words" or "patterns") accepted (= recognized) by it.
Actually, a list of regular expressions is generated which describe the same language (set of patterns) as the one accepted by your Deterministic Finite Automaton.
The output generated by this module can easily be modified to produce Perl-style regular expressions which can actually be used to recognize words (= patterns) contained in the language defined by your Deterministic Finite Automaton.
Other modules in this series (variants of Kleenes algorithm):
Math::MatrixBool (see "Kleene()")
Math::MatrixReal (see "kleene()")
Download (0.005MB)
Added: 2007-05-17 License: Perl Artistic License Price:
893 downloads
RFind 1.0
RFind it indexes and searches filenames in a directory hierarchy. more>>
RFind indexes the filenames of a given directory, and allows you to quickly search this index with regular expressions. Search-on-typing with more than 500,000 indexed filenames is easily possible.
RFind attempts to be very configurable so that it can be useful to everyone. It features hierarchically presented search results, search-on-typing, and the ability to define rules to execute on mouse click.
Main features:
- Hierarchical presented search results
- Search-on-typing
- Define rules to execute on mouseclick
<<lessRFind attempts to be very configurable so that it can be useful to everyone. It features hierarchically presented search results, search-on-typing, and the ability to define rules to execute on mouse click.
Main features:
- Hierarchical presented search results
- Search-on-typing
- Define rules to execute on mouseclick
Download (0.011MB)
Added: 2005-04-28 License: Public Domain Price:
1639 downloads
dtoGen 0.5.2
dtoGe project is a java source generation tool. more>>
dtoGe project is a java source generation tool that can ease the development of multi-tier systems by offering a reliable solution to obtain the data transfer objects out of the domain model objects without hand-writting additional code.
Using a simple set of javadoc tags, dtoGen™ provides the possibility to define the whole set of data transfer objects used by your system.
<<lessUsing a simple set of javadoc tags, dtoGen™ provides the possibility to define the whole set of data transfer objects used by your system.
Download (0.63MB)
Added: 2006-09-01 License: GPL (GNU General Public License) Price:
1149 downloads
pidgin-hotkeys 0.2.4
pidgin-hotkeys is a Pidgin plugin that allows you to define global hotkeys for various actions. more>>
pidgin-hotkeys is a Pidgin (previously known as Gaim) plugin that allows you to define global hotkeys for various actions such as toggling buddy list, fetching queued messages, opening preferences or account dialog.
<<less Download (0.33MB)
Added: 2007-06-24 License: GPL (GNU General Public License) Price:
528 downloads
Physics::Lorentz::Transformation 0.01
Physics::Lorentz::Transformation Perl module contains representation of poincare transformations. more>>
Physics::Lorentz::Transformation Perl module contains representation of poincare transformations.
SYNOPSIS
use Physics::Lorentz;
my $rotation = Physics::Lorentz::Transformation->rotation_euler(
$alpha, $beta, $gamma
);
my $vector = Physics::Lorentz::Vector->new([$t, $x, $y, $z]);
my $rotated = $rotation->apply($vector);
# or: $rotated = $rotation * $vector;
...
This class represents a Poincare transformation. That is a proper or improper Lorentz transformation plus a shift by some 4-vector. (x = lamda*x + a)
Yes, the class name might be misleading, but honestly, when most non-physicists talk about Lorentz transformations, they mean Poincare transformations anyway. (Pun intended.)
To sum this up, the set of Poincare transformations contains, among others
Boosts
Rotations
Space Inversions / Parity
Time Inversion
Shifts by a constant vector
Combinations thereof
OVERLOADED INTERFACE
Stringification is overloaded with the stringify method.
Multiplication (*) is overloaded with the merge method for other transformations: $t3 = $t1 * $t2 corresponds to the following application on a vector: t1 * ( t2 * vec ). (I.e. t2 first, then t1) Of course, Poincare transformations do not commute!
The assignment form of multiplication is supported for merging transformations but its use is discouraged unless youre into obfuscation.
Multiplication is also overloaded for application to vectors, but only if the vector is on the right of the transformation: $t * $v is okay, but $v * $t is not.
<<lessSYNOPSIS
use Physics::Lorentz;
my $rotation = Physics::Lorentz::Transformation->rotation_euler(
$alpha, $beta, $gamma
);
my $vector = Physics::Lorentz::Vector->new([$t, $x, $y, $z]);
my $rotated = $rotation->apply($vector);
# or: $rotated = $rotation * $vector;
...
This class represents a Poincare transformation. That is a proper or improper Lorentz transformation plus a shift by some 4-vector. (x = lamda*x + a)
Yes, the class name might be misleading, but honestly, when most non-physicists talk about Lorentz transformations, they mean Poincare transformations anyway. (Pun intended.)
To sum this up, the set of Poincare transformations contains, among others
Boosts
Rotations
Space Inversions / Parity
Time Inversion
Shifts by a constant vector
Combinations thereof
OVERLOADED INTERFACE
Stringification is overloaded with the stringify method.
Multiplication (*) is overloaded with the merge method for other transformations: $t3 = $t1 * $t2 corresponds to the following application on a vector: t1 * ( t2 * vec ). (I.e. t2 first, then t1) Of course, Poincare transformations do not commute!
The assignment form of multiplication is supported for merging transformations but its use is discouraged unless youre into obfuscation.
Multiplication is also overloaded for application to vectors, but only if the vector is on the right of the transformation: $t * $v is okay, but $v * $t is not.
Download (0.011MB)
Added: 2007-07-30 License: Perl Artistic License Price:
820 downloads
CDcover XMMS Plugin 0.2
CDcover XMMS Plugin displays a graphic dependent on the currently played song. more>>
CDcover XMMS Plugin displays a graphic dependent on the currently played song.
Normal usage would be to display the CD covers for the different songs. The graphics are retrieved from your computer. Therefore searchpaths can be defined, where a corresponding cover is searched for.
Main features:
- Define as many different search paths as you need, including wildcards
- Buildin skin, full support for custom skins
- Many different graphic formats (supported formats depend on your gtk installation)
- Automatically resizes the images, and preserves aspect-ratio upon request
<<lessNormal usage would be to display the CD covers for the different songs. The graphics are retrieved from your computer. Therefore searchpaths can be defined, where a corresponding cover is searched for.
Main features:
- Define as many different search paths as you need, including wildcards
- Buildin skin, full support for custom skins
- Many different graphic formats (supported formats depend on your gtk installation)
- Automatically resizes the images, and preserves aspect-ratio upon request
Download (0.23MB)
Added: 2006-04-11 License: GPL (GNU General Public License) Price:
1291 downloads
Getopt::Attribute 1.3.2
Getopt::Attribute is a Perl module to attribute wrapper for Getopt::Long. more>>
Getopt::Attribute is a Perl module to attribute wrapper for Getopt::Long.
SYNOPSIS
use Getopt::Attribute;
our $verbose : Getopt(verbose!);
our $all : Getopt(all);
our $size : Getopt(size=s);
our $more : Getopt(more+);
our @library : Getopt(library=s);
our %defines : Getopt(define=s);
sub quiet : Getopt(quiet) { our $quiet_msg = seen quiet }
usage() if our $man : Getopt(man);
...
# Meanwhile, on some command line:
mypgm.pl --noverbose --all --size=23 --more --more --more --quiet
--library lib/stdlib --library lib/extlib
--define os=linux --define vendor=redhat --man -- foo
Note: This version of the module works works with perl 5.8.0. If you need it to work with perl 5.6.x, please use an earlier version from CPAN.
This module provides an attribute wrapper around Getopt::Long. Instead of declaring the options in a hash with references to the variables and subroutines affected by the options, you can use the Getopt attribute on the variables and subroutines directly.
As you can see from the Synopsis, the attribute takes an argument of the same format as you would give as the hash key for Getopt::Long. See the Getopt::Long manpage for details.
Note that since attributes are processed during CHECK, but assignments on newly declared variables are processed during run-time, you cant set defaults on those variables beforehand, like this:
our $verbose : Getopt(verbose!) = 1; # DOES NOT WORK
Instead, you have to establish defaults afterwards, like so:
our $verbose : Getopt(verbose!);
$verbose ||= 1;
Alternatively, you can specify a default value within the Getopt attribute:
our $def2 : Getopt(def2=i 42);
<<lessSYNOPSIS
use Getopt::Attribute;
our $verbose : Getopt(verbose!);
our $all : Getopt(all);
our $size : Getopt(size=s);
our $more : Getopt(more+);
our @library : Getopt(library=s);
our %defines : Getopt(define=s);
sub quiet : Getopt(quiet) { our $quiet_msg = seen quiet }
usage() if our $man : Getopt(man);
...
# Meanwhile, on some command line:
mypgm.pl --noverbose --all --size=23 --more --more --more --quiet
--library lib/stdlib --library lib/extlib
--define os=linux --define vendor=redhat --man -- foo
Note: This version of the module works works with perl 5.8.0. If you need it to work with perl 5.6.x, please use an earlier version from CPAN.
This module provides an attribute wrapper around Getopt::Long. Instead of declaring the options in a hash with references to the variables and subroutines affected by the options, you can use the Getopt attribute on the variables and subroutines directly.
As you can see from the Synopsis, the attribute takes an argument of the same format as you would give as the hash key for Getopt::Long. See the Getopt::Long manpage for details.
Note that since attributes are processed during CHECK, but assignments on newly declared variables are processed during run-time, you cant set defaults on those variables beforehand, like this:
our $verbose : Getopt(verbose!) = 1; # DOES NOT WORK
Instead, you have to establish defaults afterwards, like so:
our $verbose : Getopt(verbose!);
$verbose ||= 1;
Alternatively, you can specify a default value within the Getopt attribute:
our $def2 : Getopt(def2=i 42);
Download (0.003MB)
Added: 2007-04-12 License: Perl Artistic License Price:
925 downloads
Test::Data 1.20
Test::Data is a Perl module to test functions for particular variable types. more>>
Test::Data is a Perl module to test functions for particular variable types.
SYNOPSIS
use Test::Data qw(Scalar Array Hash Function);
Test::Data provides utility functions to check properties and values of data and variables.
Functions
Plug-in modules define functions for each data type. See the appropriate module.
How it works
The Test::Data module simply emports functions from Test::Data::* modules. Each module defines a self-contained function, and puts that function name into @EXPORT. Test::Data defines its own import function, but that does not matter to the plug-in modules.
If you want to write a plug-in module, follow the example of one that already exists. Name the module Test::Data::Foo, where you replace Foo with the right name. Test::Data should automatically find it.
<<lessSYNOPSIS
use Test::Data qw(Scalar Array Hash Function);
Test::Data provides utility functions to check properties and values of data and variables.
Functions
Plug-in modules define functions for each data type. See the appropriate module.
How it works
The Test::Data module simply emports functions from Test::Data::* modules. Each module defines a self-contained function, and puts that function name into @EXPORT. Test::Data defines its own import function, but that does not matter to the plug-in modules.
If you want to write a plug-in module, follow the example of one that already exists. Name the module Test::Data::Foo, where you replace Foo with the right name. Test::Data should automatically find it.
Download (0.008MB)
Added: 2007-05-03 License: Perl Artistic License Price:
904 downloads
C::Include 1.40
C::Include is a package to easy operate with binary data via describing they like C/C++ structs. more>>
C::Include is a package to easy operate with binary data via describing they like C/C++ structs.
CLASSES AND PACKAGES
C::Include - Header file base parser class
C::Include::Struct - Struct wraper class
USAGE
use C::Include;
POSSIBILITY
- skip comments;
- valid preprocessor commands: define, ifdef, ifndef, endif, else;
- supported bitset and enclosed structs, enums;
- The compiled data may be cached in the external file and at repeated call not compiled
any more, that will speed up operation.8);
- may be defined and redefined type substitutions via #define
(Ex: #define WORD word );
- predefined standart types:
char
unsigned char
short
unsigned short
int
unsigned int
long
unsigned long
long long
unsigned long long
float
double
pointer
null
neganull
bit
short int
long int
long long int
unsigned
unsigned long int
unsigned short int
unsigned long long int
byte
dword
string (null padded)
sstring (space padded)
zstring (null terminated, null padded)
- predefined standart type aliases:
short int => short
long int => long
long long int => long long
unsigned => unsigned long
unsigned long int => unsigned long
unsigned short int => unsigned short
unsigned long long int => unsigned long long
byte => unsigned char
word => unsigned short
dword => unsigned long
<<lessCLASSES AND PACKAGES
C::Include - Header file base parser class
C::Include::Struct - Struct wraper class
USAGE
use C::Include;
POSSIBILITY
- skip comments;
- valid preprocessor commands: define, ifdef, ifndef, endif, else;
- supported bitset and enclosed structs, enums;
- The compiled data may be cached in the external file and at repeated call not compiled
any more, that will speed up operation.8);
- may be defined and redefined type substitutions via #define
(Ex: #define WORD word );
- predefined standart types:
char
unsigned char
short
unsigned short
int
unsigned int
long
unsigned long
long long
unsigned long long
float
double
pointer
null
neganull
bit
short int
long int
long long int
unsigned
unsigned long int
unsigned short int
unsigned long long int
byte
dword
string (null padded)
sstring (space padded)
zstring (null terminated, null padded)
- predefined standart type aliases:
short int => short
long int => long
long long int => long long
unsigned => unsigned long
unsigned long int => unsigned long
unsigned short int => unsigned short
unsigned long long int => unsigned long long
byte => unsigned char
word => unsigned short
dword => unsigned long
Download (0.016MB)
Added: 2006-07-06 License: Perl Artistic License Price:
1206 downloads
fl0p 0.0.2 Beta
fl0p provides a passive OS fingerprinting tool. more>>
fl0p provides a passive OS fingerprinting tool.
fl0p is a passive L7 flow fingerprinter that examines TCP/UDP/ICMP packet sequences, can peek into cryptographic tunnels, can tell human beings and robots apart, and performs a couple of other infosec-related tricks.
This approach differs from the techniques used by most other passive
sniffers and mappers, and is advantageous in several interesting ways:
- General flow behavior remains largely unchanged regardless of whether
cryptographic tunnels or other obfuscation techniques are used. As
such, backdoors or firewall evasion techniques that for example
use SSL on port 443, can be told apart from browser traffic, and
further investigated.
- General insight into legitimate encrypted sessions can be gained; for
example, it is possible to remotely tell successful and failed SSH
authentication attempts apart, and react accordingly.
- Human actions can be told apart from automated efforts: it is possible
to ignore SMTP client programs, but single out humans manually
interacting with the server on port 25; similarly, automated SSH
login attempts can be told apart from human actions.
Enhancements:
- Chained signature support added.
- SMTP signatures
<<lessfl0p is a passive L7 flow fingerprinter that examines TCP/UDP/ICMP packet sequences, can peek into cryptographic tunnels, can tell human beings and robots apart, and performs a couple of other infosec-related tricks.
This approach differs from the techniques used by most other passive
sniffers and mappers, and is advantageous in several interesting ways:
- General flow behavior remains largely unchanged regardless of whether
cryptographic tunnels or other obfuscation techniques are used. As
such, backdoors or firewall evasion techniques that for example
use SSL on port 443, can be told apart from browser traffic, and
further investigated.
- General insight into legitimate encrypted sessions can be gained; for
example, it is possible to remotely tell successful and failed SSH
authentication attempts apart, and react accordingly.
- Human actions can be told apart from automated efforts: it is possible
to ignore SMTP client programs, but single out humans manually
interacting with the server on port 25; similarly, automated SSH
login attempts can be told apart from human actions.
Enhancements:
- Chained signature support added.
- SMTP signatures
Download (0.030MB)
Added: 2007-02-28 License: LGPL (GNU Lesser General Public License) Price:
968 downloads
Other version of fl0p
License:GPL (GNU General Public License)
Secleted [ 0 ] software to compare
Copyright Notice:
Software piracy is theft, Using crack, password, serial numbers, registration codes, key generators is illegal and prevent future software development. The above define obfuscation search only lists software in full, demo and trial versions for free download. Download links are directly from our mirror sites or publisher sites, torrent files or links from rapidshare.com, yousendit.com or megaupload.com are not allowed