Share this

Sunday, July 27, 2008

A Buffer Overflow Study Attacks and Defenses


Synopsis

Will the Code You Write Today Headline Tomorrow’s BugTraq Mail List?
·Includes Numbered-by-Line Exploit Code Examples That Illustrate the Differences Between Stack Overflows, Heap Corruption, and Format String Bugs
·Provides Case Studies for Most Major Platforms and Environments, Including Windows, FreeBSD, FrontPage, and Linux,
·Avoid Worm or Custom Exploits by Analyzing Your Source Code to Detect Buffer Overflow Vulnerabilities
Forensic investigations of notorious Internet attacks, such as the SQL Slammer and Blaster Worms, reveal buffer overflows to be the sophisticated hacker’s "vulnerability of choice". These worms crippled the Internet and cost billions of dollars to clean up. Now, even more powerful and insidious threats have appeared in the form of "custom exploits". These one-time only exploits are custom crafted to attack your enterprise, making them even more difficult to detect and defend. No catchy names, no media coverage; just your own personal disaster.

James C. Foster’s Buffer Overflow Attacks clearly demonstrates that the only way to defend against the endless variety of buffer overflow attacks is to implement a comprehensive design, coding and test plan for all of your applications. From Dave Aitel’s Foreword through the last appendix, this is the only book dedicated exclusively to detecting, exploiting, and preventing buffer overflow attacks.

Annotation

The SANS Institute maintains a list of the "Top 10 Software Vulnerabilities." At the current time, over half of these vulnerabilities are exploitable by Buffer Overflow attacks, making this class of attack one of the most common and most dangerous weapon used by malicious attackers. This is the first book specifically aimed at detecting, exploiting, and preventing the most common and dangerous attacks.
Buffer overflows make up one of the largest collections of vulnerabilities in existence; And a large percentage of possible remote exploits are of the overflow variety. Almost all of the most devastating computer attacks to hit the Internet in recent years including SQL Slammer, Blaster, and I Love You attacks. If executed properly, an overflow vulnerability will allow an attacker to run arbitrary code on the victim's machine with the equivalent rights of whichever process was overflowed. This is often used to provide a remote shell onto the victim machine, which can be used for further exploitation.
A buffer overflow is an unexpected behavior that exists in certain programming languages. This book provides specific, real code examples on exploiting buffer overflow attacks from a hacker's perspective and defending against these attacks for the software developer.Over half of the "SANS TOP 10 Software Vulnerabilities" are related to buffer overflows. None of the current-best selling software security books focus exclusively on buffer overflows. This book provides specific, real code examples on exploiting buffer overflow attacks from a hacker's perspective and defending against these attacks for the software developer

More Reviews and Recommendations Biography
James C. Foster, Fellow is the Deputy Director of Global Security Solution Development for Computer Sciences Corporation where he is responsible for the vision and development of physical, personnel, and data security solutions. Prior to CSC, Foster was the Director of Research and Development for Foundstone Inc. (acquired by McAfee) and was responsible for all aspects of product, consulting, and corporate R&D initiatives. Prior to joining Foundstone, Foster was an Executive Advisor and Research Scientist with Guardent Inc. (acquired by Verisign) and an adjunct author at Information Security Magazine(acquired by TechTarget), subsequent to working as Security Research Specialist for the Department of Defense. With his core competencies residing in high-tech remote management, international expansion, application security, protocol analysis, and search algorithm technology, Foster has conducted numerous code reviews for commercial OS components, Win32 application assessments, and reviews on commercial-grade cryptography implementations.
Foster is a seasoned speaker and has presented throughout North America at conferences, technology forums, security summits, and research symposiums with highlights at the Microsoft Security Summit, Black Hat USA, Black Hat Windows, MIT Wireless Research Forum, SANS, MilCon, TechGov, InfoSec World 2001, and the Thomson Security Conference. He also is commonly asked to comment on pertinent security issues and has been sited in USAToday, Information Security Magazine, Baseline, Computer World, Secure Computing, and the MIT Technologist. Foster holds an A.S., B.S., MBA and numerous technology and management certifications and has attended or conducted research at the Yale School of Business, Harvard University, the University of Maryland, and is currently a Fellow at University of Pennsylvania’s Wharton School of Business.
Foster is also a well published author with multiple commercial and educational papers; and has authored, contributed, or edited for major publications to include Snort 2.1 Intrusion Detection (Syngress Publishing, ISBN: 1-931836-04-3), Hacking Exposed, Fourth Edition, Anti-Hacker Toolkit, Second Edition, Advanced Intrusion Detection, Hacking the Code: ASP.NET Web Application Security (Syngress, ISBN: 1-932266-65-8), Anti-Spam Toolkit, and the forthcoming Google Hacking for Penetration Techniques (Syngress, ISBN: 1-931836-36-1) .
Vitaly Osipov (CISSP, CISA) is currently managing intrusion detection systems for a Big 5 global investment bank from Sydney, Australia. He previously worked as a security specialist for several European companies in Dublin, Prague and Moscow. Vitaly has co-authored books on firewalls, IDS and security, including Special Ops: Host and Network Security for Microsoft, UNIX and Oracle (ISBN 1-931836-69-8) and Snort 2.0: Intrusion Detection (ISBN 1-931836-74-4). Vitaly’s background includes a long history of designing and implementing information security systems for financial, ISPs, telecoms and consultancies. He is currently studying for his second postgraduate degree in mathematics. He would like to thank his colleagues at work for the wonderful bunch of geeks they are.


Download

APress - The Definitive Guide to MySQL

AIX Reference for Sun Solaris Administrators


AIX Reference for Sun Solaris Administrators:

In today's heterogeneous computer environments, especially in UNIX servers and workstations, it is essential that the system administrator have basic knowledge of different operating systems. This redbook is written for Sun Solaris administrators who wants to transfer their knowledge of Solaris UNIX skills to the AIX 5L operating system. This redbook will basically compare system administration tasks in Solaris 8 to AIX 5L Version 5.1. But it is not the intention of this redbook to decide which operating system is the better of the two. This redbook shows the reader similarities and differences between each operating system. This redbook will also introduce Solaris administrators to IBM pSeries hardware. It is assumed that the reader of this redbook already has Solaris 8 system administration skills, and are familiar with Sun hardware. In the first section on each chapter, we will briefly mention how the Solaris tasks are carried out. It is not the intention of this redbook to describe in detail how systems administrator tasks are performed in Sun Solaris. In the last section of each chapter, we will provide a quick reference that will be handy to use. This redbook will demonstrate some ways to complete each administrative task, but not all ways to do it, because there are many different ways to do the same task in Solaris and AIX 5L operating systems. For example, in the AIX 5L operating system, system administrators can do many of the same tasks using three different ways: Web-based System Manager, SMIT, or commands on the command line. This redbook is a valuable tool for system administrators and other technical support personnel who deal with AIX 5L and Solaris operating systems.

Download

Oracle OCP Admin Exam

This course advances your success as an Oracle professional in the area of database administration. In this class, you'll learn how to configure an Oracle database for multilingual applications. You will practice various methods of recovering the database using RMAN and Flashback technology. Database performance monitoring tools will be covered, in addition to the steps to take to resolve common problems and improve performance. You will also learn how to administer a database efficiently by using database technologies such as the Resource Manager, the Scheduler, Automatic Storage Management (ASM), and VLDB features. You will set up a secure database using Virtual Private Database, and learn how to efficiently move data from database to database. The lesson topics are reinforced with structured hands-on practices and a workshop. This course is designed to prepare you for the corresponding Oracle Certified Professional exam.

This course counts towards the Hands-on course requirement for the Oracle Database 10g Administrator Certification. Only instructor-led inclass or instructor-led online formats of this course will meet the Certification Hands-on Requirement. Self Study CD-Rom and Knowledge Center courses are excellent study and reference tools but DO NOT meet the Hands-on Requirement for certification.

Download

100 LINUX TIPS AND TRICKS.

RHCE Syngress RedHat Certified Engineer Study Guide


Contents:

RHCE Prerequisites
Hardware and Installation
The Boot Process
Linux Filesystem Administration
Package Management
User Administration
System Administration Tools
Kernel Services and Configuration
Apache and Squid
Network File-Sharing Services
Domain Name Service
Electronic Mail
Other Networking Services
The X Window System
Securing Services
Troubleshooting
Appendix A: Sample Exam 1
Appendix B: Sample Exam 2

Download

David Mertz - Text Processing In Python

Text Processing in Python describes techniques for manipulation of text using the
Python programming language. At the broadest level, text processing is simply
taking textual information and doing something with it. This might be
restructuring or reformatting it, extracting smaller bits of information from it,
or performing calculations that depend on the text. Text processing is arguably
what most programmers spend most of their time doing. Because Python is
clear, expressive, and object-oriented it is a perfect language for doing text
processing, even better than Perl. As the amount of data everywhere continues
to increase, this is more and more of a challenge for programmers. This book is
not a tutorial on Python. It has two other goals: helping the programmer get
the job done pragmatically and efficiently; and giving the reader an understanding
- both theoretically and conceptually - of why what works works and what
doesn't work doesn't work. Mertz provides practical pointers and tips that
emphasize efficent, flexible, and maintainable approaches to the textprocessing
tasks that working programmers face daily.

Download

SAMS - DB2 Developer's Guide-Fourth Edition


As a professional DB2 developer your days are extremely busy. Not only do you need to understand DB2, but you also need to understand programming and design issues, SQL, data modeling, operating system internals, on-line transaction processing systems, performance monitors, third-party tools, distributed data, and office politics. Wouldn't it be nice if there were a place to turn for advice? Well, now there is!

DB2 Developer's Guide, published by SAMS Publishing, Inc., is the leading DB2 text in the industry. Containing more than 1200 pages of in-depth technical information, DB2 Developer's Guide provides a comprehensive DB2 text that is not simply another book on SQL syntax and DB2 basics. It draws upon the author's day-to-day experiences as a DB2 system administrator, database administrator, and database analyst. The book is designed for ease of use both as a learning tool and a reference.

Read what the experts say about DB2 Developer's Guide:
"For Version 8 of DB2. The latest edition of a classic book on DB2 for database administrators and application programmers. No one can match Craig S. Mullins for knowledge of DB2 and clear presentation style. Your webmaster has put past editions of this book to good use and considers the money well spent." — American Programmer

"By far the best book I have ever bought. Whether you are a DB2 expert or just want to broaden your knowledge, a systems programmer or a programmer, this book contains an enormous amount of data which is beautifully presented." — rizzuto.it

"The only book to surpass Craig Mullins' DB2 Developer's Guide is Craig's second edition of that book. I found this work to be both a comprehensive tutorial on all aspects of DB2, and at the same time the most valuable reference book on DB2 for MVS. Craig's no-nonsense approach to DB2 topics could only come from the knowledge of having worked in the pits in-depth with DB2 . . . If DB2 is your profession, this book belongs on your desk." — Richard Yevich, DB2 Consultant, RYC, Inc.


"This is an excellent book . . . It is chock full of DB2 technical information, design and tuning approaches and database administration guidelines . . . In an organized and coherent way, Mullins seems to have dumped his entire DB2 life experience into DB2 Developer's Guide . . . (it) presents literally everything programmers and DBAs need to know about advanced DB2." — Jonathon Sayles in Relational Database Journal


Once you've read the third edition of Craig Mullins' DB2 Developer's Guide you will know why the people on the DB2 List Serve forum refer to this book as the "bible." The DB2 Developer's Guide is a comprehensive guide for both the beginner and those experienced in DB2 and relational database technology . . . I can not say enough about the DB2 Developer's Guide.— Troy Coleman in IDUG Solutions Journal

The DB2 Developer's Guide is a must buy for both inexperienced and DB2 experts alike. I am amazed at the amount of information Craig covers in the DB2 Developer's Guide. — Chris Foot in The Data Administration Newsletter
The best DB2 book on the market just got better..."DB2 Developer's Guide" has the potential to pay for itself many times over if you follow its useful design and performance advice. If you use DB2 in your workplace, the most recent edition of "DB2 Developer's Guide" should definitely be on your bookshelf. Read it to save yourself an enormous amount of pain and suffering. — Ron Shirey in Relational Database Journal
"This book (contains) . . . a wealth of comprehensive, well-written information . . . Craig Mullins' book, DB2 Developer's Guide, will go a long way toward helping DBAs find the information they need . . . Mullins has done a good job of transforming highly technical information into easily understandable text." — Chris Foot in Database Programming & Design
"Now that much of the industry is using DB2, I believe that Craig Mullins' book will become a classic reference that most of you will want to keep on your desks." — Steve Loesch in PLATINUM SYSJOURNAL
This was revised and updated for DB2 Versions 4 & 5, and still the definitive massive tome of DB2 programming and application development. The book guides you through the major components and DB2 internals from a practitioner's perspective . . . this is a very good practitioner's guide and reference. - fatbrain.com

DB2 Developer's Guide is a complete reference for the DB2 professional. It is a perfect tool for finding the options available to the DB2 developer, and steering you to the right method — Gregory Amov in Computing News & Review
"The book is not only the size of a small encyclopedia it is also just about as comprehensive." — Books & Bytes News & Reviews

Check out and/or order Craig S. Mullins' new "DB2 Developer's Guide." It'll make a nice addition to your DB2 library.— search390.com

Download

O'Reilly - Java NIO

Book description

Java NIO explores the new I/O capabilities of version 1.4 in detail and shows you how to put these features to work to greatly improve the efficiency of the Java code you write. This compact volume examines the typical challenges that Java programmers face with I/O and shows you how to take advantage of the capabilities of the new I/O features. You'll learn how to put these tools to work using examples of common, real-world I/O problems and see how the new features have a direct impact on responsiveness, scalability, and reliability. Because the NIO APIs supplement the I/O features of version 1.3, rather than replace them, you'll also learn when to use new APIs and when the older 1.3 I/O APIs are better suited to your particular application.

Full Description

Many serious Java programmers, especially enterprise Java programmers, consider the new I/O API--called NIO for New Input/Output--the most important feature in the 1.4 version of the Java 2 Standard Edition. The NIO package includes many things that have been missing from previous editions of Java that are critical to writing high-performance, large-scale applications: improvements in the areas of buffer management, scalable network and file I/O, character-set support, and regular expression matching. Most of all, it boosts performance and speed dramatically. Java NIO explores the new I/O capabilities of version 1.4 in detail and shows you how to put these features to work to greatly improve the efficiency of the Java code you write. This compact volume examines the typical challenges that Java programmers face with I/O and shows you how to take advantage of the capabilities of the new I/O features. You?ll learn how to put these tools to work using examples of common, real-world I/O problems and see how the new features have a direct impact on responsiveness, scalability, and reliability. The

Book includes:

A rundown of the new features in NIO
Basic and advanced I/O Concepts
Binary I/O and the new buffer classes
Memory mapped files and file locking
Character I/O: encoding, decoding and transforming character data
Regular Expressions and the new java.util.regex package
Muliplexing with java.nio

Because the NIO APIs supplement the I/O features of version 1.3, rather than replace them, you'll also learn when to use new APIs and when the older 1.3 I/O APIs are better suited to your particular application. Java NIO is for any Java programmer who is interested in learning how to boost I/O performance, but if you're developing applications where performance is critical, such as game computing or large-scale enterprise applications, you'll want to give this book a permanent spot on your bookshelf. With the NIO APIs, Java no longer takes a backseat to any language when it comes to performance. Java NIO will help you realize the benefits of these exciting new features.

Download

SAMS - Slackware Linux Unleashed


Book Description

SlackWare Linux 4 Unleashed shows you how to install, configure, and manage the latest version of SlackWare Linux. The book provides expert advice on installation and configuration, programming, administration and networking. It also provides wisdom and insights on how to control some of the more difficult-to-use aspects of SlackWare, like integrating SlackWare into Microsoft networks. Everything you need to know to use Slackware to set up an Internet site is covered. SlackWare Linux 4 Unleashed will also have coverage of working with open-source databases, and will cover programming in several languages and shells in detail.

Book Info

Provides detailed information on how to configure KDE and GNOME for computers, set up, configure and maintain network services, learn the technical details on Domain Name Server, Network Information Service, and the Dynamic Host Configuration Protocol, and set up a Small Office/Home Office network environment. Softcover. CD-ROM included.

Download

O'Reilly Learning the Unix OS


Book description

If you're new to Unix, this concise book will tell you just what you need to get started and no more. This fifth edition is the most effective introduction to Unix in print, covering Internet usage for email, file transfers, and web browsing. It's an ideal primer for Mac and PC users who need to know a little about Unix on the systems they visit.

Full Description

If you are new to Unix, this concise book will tell you just what you need to get started and no more. Unix was one of the first operating systems written in C, a high-level programming language, and its natural portability and low price made it a popular choice among universities. Initially, two main dialects of Unix existed: one produced by AT&T known as System V, and one developed at UC Berkeley and known as BSD. In recent years, many other dialects have been created, including the highly popular Linux operating system and the new Mac OS X (a derivative of BSD). Learning the Unix Operating System is a handy book for someone just starting with Unix or Linux, and it's an ideal primer for Mac and PC users of the Internet who need to know a little about Unix on the systems they visit. The fifth edition is the most effective introduction to Unix in print, covering Internet usage for email, file transfers, web browsing, and many major and minor updates to help the reader navigate the ever-expanding capabilities of the operating system:
In response to the popularity of Linux, the book now focuses on the popular bash shell preferred by most Linux users.
Since the release of the fourth edition, the Internet and its many functions has become part of most computer user's lives. A new chapter explains how to use ftp, pine for mail, and offers useful knowledge on how to surf the web.
Today everyone is concerned about security. With this in mind, the author has included tips throughout the text on security basics, especially in the Internet and networking sections.
The book includes a completely updated quick reference card to make it easier for the reader to access the key functions of the command line.

Download

O'REILLY Practical UNIX and Internet Security

Book description

This edition of Practical Unix & Internet Security provides detailed coverage of today's increasingly important security and networking issues. Focusing on the four most popular Unix variants today--Solaris, Mac OS X, Linux, and FreeBSD--this book contains new information on PAM (Pluggable Authentication Modules), LDAP, SMB/Samba, anti-theft technologies, embedded systems, wireless and laptop issues, forensics, intrusion detection, chroot jails, telephone scanners and firewalls, virtual and cryptographic filesystems, WebNFS, kernel security levels, outsourcing, legal issues, new Internet protocols and cryptographic algorithms, and much more.

Full Description

When Practical Unix Security was first published more than a decade ago, it became an instant classic. Crammed with information about host security, it saved many a Unix system administrator from disaster. The second edition added much-needed Internet security coverage and doubled the size of the original volume. The third edition is a comprehensive update of this very popular book - a companion for the Unix/Linux system administrator who needs to secure his or her organization's system, networks, and web presence in an increasingly hostile world. Focusing on the four most popular Unix variants today--Solaris, Mac OS X, Linux, and FreeBSD--this book contains new information on PAM (Pluggable Authentication Modules), LDAP, SMB/Samba, anti-theft technologies, embedded systems, wireless and laptop issues, forensics, intrusion detection, chroot jails, telephone scanners and firewalls, virtual and cryptographic filesystems, WebNFS, kernel security levels, outsourcing, legal issues, new Internet protocols and cryptographic algorithms, and much more. Practical Unix & Internet Security consists of six parts:
Computer security basics: introduction to security problems and solutions, Unix history and lineage, and the importance of security policies as a basic element of system security.
Security building blocks: fundamentals of Unix passwords, users, groups, the Unix filesystem, cryptography, physical security, and personnel security.
Network security: a detailed look at modem and dialup security, TCP/IP, securing individual network services, Sun's RPC, various host and network authentication systems (e.g., NIS, NIS+, and Kerberos), NFS and other filesystems, and the importance of secure programming.
Secure operations: keeping up to date in today's changing security world, backups, defending against attacks, performing integrity management, and auditing.
Handling security incidents: discovering a break-in, dealing with programmed threats and denial of service attacks, and legal aspects of computer security.
Appendixes: a comprehensive security checklist and a detailed bibliography of paper and electronic references for further reading and research.
Packed with 1000 pages of helpful text, scripts, checklists, tips, and warnings, this third edition remains the definitive reference for Unix administrators and anyone who cares about protecting their systems and data from today's threats.

Download

O'Reilly - sendmail Desktop Reference


A classic O'Reilly title since 1993, sendmail now covers Versions 8.10 through 8.14 of this email routing program, including dozens of new features, options, and macros. This edition also takes a more nuts-and-bolts approach than its predecessors. It includes both an administration handbook and a reference guide that provide you with clear options for installing, configuring and managing sendmail's latest versions and companion programs.

The sendmail program has withstood the test of time because of its ability to solve the mail-routing needs of all sites large or small, complex or simple. But it's also difficult to configure and even more difficult to understand. That's why this book has proven valuable since the dawn of email. With it, you will be able to configure the program to meet any need, so that you never again have to call in a sendmail guru to bail you out.

sendmail includes the following sections:
Some Basics is especially useful for people new to the program. It covers the basic concepts underlying mail delivery and the roles sendmail plays in that delivery
Administration covers all aspects of handling sendmail, from downloading and installing new releases to managing mailing lists and aliases
Configuration Reference contains a heavily cross-referenced guide for configuring and tuning sendmail. Every arcane detail of sendmail is listed alphabetically
Appendices contain more detail about sendmail than you may ever need
sendmail, system administrators, programmers, network engineers, and even inexperienced users will be able to match this challenging but necessary utility to the needs of their network.

Download

O'Reilly - Linux Command Directory

Book description

This updated fifth edition covers all substantial user, programming, administration, and networking commands for the most common Linux distributions. Considered by many to be the most complete and authoritative command reference for Linux available. No matter how you use Linux, you need the quick access to information this book provides.

Full Description

Over the last few years, Linux has grown both as an operating system and a tool for personal and business use. Simultaneously becoming more user friendly and more powerful as a back-end system, Linux has achieved new plateaus: the newer filesystems have solidified, new commands and tools have appeared and become standard, and the desktop--including new desktop environments--have proved to be viable, stable, and readily accessible to even those who don't consider themselves computer gurus.
Whether you're using Linux for personal software projects, for a small office or home office (often termed the SOHO environment), to provide services to a small group of colleagues, or to administer a site responsible for millions of email and web connections each day, you need quick access to information on a wide range of tools. This book covers all aspects of administering and making effective use of Linux systems. Among its topics are booting, package management, and revision control. But foremost in Linux in a Nutshell are the utilities and commands that make Linux one of the most powerful and flexible systems available.

Now in its fifth edition, Linux in a Nutshell brings users up-to-date with the current state of Linux. Considered by many to be the most complete and authoritative command reference for Linux available, the book covers all substantial user, programming, administration, and networking commands for the most common Linux distributions.

Comprehensive but concise, the fifth edition has been updated to cover new features of major Linux distributions. Configuration information for the rapidly growing commercial network services and community update services is one of the subjects covered for the first time.

But that's just the beginning. The book covers editors, shells, and LILO and GRUB boot options. There's also coverage of Apache, Samba, Postfix, sendmail, CVS, Subversion, Emacs, vi, sed, gawk, and much more. Everything that system administrators, developers, and power users need to know about Linux is referenced here, and they will turn to this book again and again.

Download

O'Reilly - Java 3d Programming

Slackware Linux Unleashed, Third Edition


Slackware Linux Unleashed, Third Edition is a 32-bit version of the popular UNIX operating system. In many ways, it enhances the performance of UNIX and UNIX-based applications. Slackware is a free operating system that can be downloaded from the Internet. And because it is free, there is very little existing documentation for the product. This book fills that void and provides Slackware Linux users with the information they need to effectively run the software on their computer or network. - Teaches editing, typesetting, and graphical user interfaces

- Discusses Linux for programmers and system administrators

Download

O'Reilly - Advanced Perl Programming

Book description

This book covers complex techniques for managing production-ready Perl programs and explains methods for manipulating data and objects that may have looked like magic before. It gives you necessary background for dealing with networks, databases, and GUIs, and includes a discussion of internals to help you program more efficiently and embed Perl within C or C within Perl.

Full Description

So you've learned Perl, but you're getting frustrated. Perhaps you've taken on a larger project than the ones you're used to. Or you want to add a user interface or a networking component. Or you need to do more complicated error trapping. Whether your knowledge of Perl is casual or deep, this book will make you a more accomplished programmer. Here you can learn the complex techniques for production-ready Perl programs. This book explains methods for manipulating data and objects that may have looked like magic before. Furthermore, it sets Perl in the context of a larger environment, giving you the background you need for dealing with networks, databases, and GUIs. The discussion of internals helps you program more efficiently and embed Perl within C or C within Perl. Major topics covered include:

Practical use of packages and classes (object-oriented programming)
Complex data structures
Persistence (e.g., using a database)
Networking
Graphical interfaces, using the Tk toolkit
Interaction with C language functions
Embedding and extending the Perl interpreter

In addition, the book patiently explains all sorts of language details you've always wanted to know more about, such as the use of references, trapping errors through the eval operator, non-blocking I/O, when closures are helpful, and using ties to trigger actions when data is accessed. You will emerge from this book a better hacker, and a proud master of Perl.

Download

O'Reilly Beginning Perl for Bioinformat.

Book Description

With its highly developed capacity to detect patterns in data, Perl has become one of the most popular languages for biological data analysis. But if you're a biologist with little or no programming experience, starting out in Perl can be a challenge. Many biologists have a difficult time learning how to apply the language to bioinformatics. The most popular Perl programming books are often too theoretical and too focused on computer science for a non-programming biologist who needs to solve very specific problems. Beginning Perl for Bioinformatics is designed to get you quickly over the Perl language barrier by approaching programming as an important new laboratory skill, revealing Perl programs and techniques that are immediately useful in the lab. Each chapter focuses on solving a particular bioinformatics problem or class of problems, starting with the simplest and increasing in complexity as the book progresses. Each chapter includes programming exercises and teaches bioinformatics by showing and modifying programs that deal with various kinds of practical biological problems. By the end of the book you'll have a solid understanding of Perl basics, a collection of programs for such tasks as parsing BLAST and GenBank, and the skills to take on more advanced bioinformatics programming. Some of the later chapters focus in greater detail on specific bioinformatics topics. This book is suitable for use as a classroom textbook, for self-study, and as a reference. The book covers:

Programming basics and working with DNA sequences and strings
Debugging your code
Simulating gene mutations using random number generators
Regular expressions and finding motifs in data
Arrays, hashes, and relational databases
Regular expressions and restriction maps
Using Perl to parse PDB records, annotations in GenBank, and BLAST output


Book Info

Designed to get you quickly over the Perl language barrier by approaching programming as an important new laboratory skill revealing Perl programs and techniques that are immediately useful in the lab. Softcover.

Download

UNIX Programmer's Manual


UNIX Programmers Manual

The definitive published document about UNIX is the UNIX Programmer's Manual. System V, HP-UX, and BSD UNIX have slightly different versions of it.

Volume 1 of the UNIX Programmers Manual consists mostly of documentation written for programmers. It documents mainly software in little space.

Most of Volume 1 of the UNIX Programmers Manual is kept on-line. section Man Command explains how to utilize it.

Download

Hack Proofing Linux

Book Description:
The Linux operating system continues to gain market share, based largely on its reputation as the most secure operating system available. The challenge faced by system administrators is that Linux is secure only if installed and configured properly, constantly and meticulously updated, and carefully integrated with a wide variety of Open Source security tools. Hack Proofing Linux provides the system administrator with coverage of the most popular Linux operating systems and Open Source security tools, along with the techniques necessary to properly configure and maintain Linux systems and to counter malicious attacks.

Download

Misc - Debian The Perfect Setup

JBoss Server Development with Eclipse



Boss, the open source, J2EE-based application server, has been a favorite of the Java community for a long time. But recently JBoss got a handy new toolkit, thanks to Eclipse—one that may just help the product go from full steam to mainstream.
While JBoss has always been applauded for being robust and scalable, with support for security, load balancing, clustering, and transactional capability, what it hasn't had is a GUI-based IDE. And that has left the mass marketplace solely in the hands of closed source competitors such as IBM, BEA, and Borland. Those who prefer can always continue to configure JBoss using command line tools, but thanks to the Eclipse project, JBoss has an IDE that plugs into the Eclipse development framework, making the product a legitimate option for the thousands of developers who prefer a GUI.

A few Eclipse plugins already have support for JBoss, but the JBoss-IDE plugin is by far the easiest to install, update, and use. The plugin supports starting and stopping servers, debugging server-side code, packaging archive files, and deploying archive files. It also has support for XDoclet code-generation. Best of all, the JBoss-IDE is developed and maintained by JBoss Inc., the makers of the JBoss Application Server itself

In this article, I'll show you how to install and configure the JBoss-IDE plugin and then walk you through the steps of creating a simple Hello World application, packaging it, and deploying it to a JBoss server.

Installing the Plugin
Many Eclipse plugins are packaged as a ZIP file that you download and unzip directly into Eclipse's plugin directory. But the JBoss-IDE uses Eclipse's built-in update management functionality which makes initial installation easy and subsequent updates even easier.

Eclipse 2.x

Click Help—>Software Updates—>Update Manager.
In the Feature Updates view, right click and select New—>Site Bookmark.
Select an unused name for the bookmark and then set the bookmark at http://jboss.sourceforge.net/jbosside/updates.
Expand the bookmark that was added and select JBoss-IDE 1.0/Eclipse 2.1.
You should now see the available versions of the plugin. Select the latest version.
You will be prompted to restart Eclipse.

Eclipse 3.x

Click Help—>Software Updates—>Find and Install.
Select Search for new features to install.
Click Add Update Site.
Select an unused name for the update site and then set the boomark at http://jboss.sourceforge.net/jbosside/updates.
Expand the update site that was added and select JBoss-IDE 1.0/Eclipse 3.0.
You should now see the available versions of the plugin. Select the latest version.
You will be prompted to restart Eclipse.

Download

JBoss Group - JBoss All Docs Subscription


"Under the expanded agreement, Unisys can now deliver a broad range of support services, consulting services and public training for clients developing multi-channel, multi-portal applications based on JEMS. The expanded agreement covers all of JEMS, including leading products such as JBoss Application Server, Hibernate, Apache Tomcat, JBoss Rules, JBoss Transactions and JBoss Portal. Unisys sees JEMS as a critical building block in the development of open Service-Oriented Architecture (SOA) strategies. SOA is a rapidly growing enterprise IT strategy that composes the discrete functions contained in mainframe applications, databases and enterprise software applications into interoperable, standards-based services that can be integrated and assembled quickly to meet changing business requirements. Unisys has been systematically developing the methodology for architecting, governing and implementing this open SOA under its 3D Visible Enterprise (3D-VE) approach for several years. " ...

Download

JBoss and PostgreSQL


The best part is one-line software installation by using our exclusive RPM packages: Tomcat, JBoss,GlassFish, Apache Geronimo. Each package is already pre-configured for hassle-free installation and does not require any modification.

You can also install any other software yourself since you have root access :)

Root access give you total freedom to modify, install, do whatever you want with your own system.

The list of available software which you can install is really huuge :)

Check it yourself: Available Software



Download

O'Reilly - Core Python

"Learning Python, Second Edition": An Updated Guide to the Core Python Language and Object-Oriented Programming

Sebastopol, CA--Portable, powerful, and a breeze to use, Python is the popular open source object-oriented programming language used for both standalone programs and scripting applications. Python is considered easy to learn, but there's no quicker way to mastery of the language than learning from an expert teacher. The new edition of Learning Python (O'Reilly, US $34.95) places readers in the capable hands of two expert teachers, Mark Lutz and David Ascher, whose friendly, well-structured prose has guided many a programmer to proficiency with the language.

Learning Python, Second Edition offers programmers a comprehensive learning tool for Python as well as a thorough introduction to object- oriented programming in general. The book has been completely updated for the numerous language and class presentation changes that have taken place since the release of the first edition in 1999. In this edition, the authors cover the basic elements of the latest release of Python 2.3 and guide readers through its new features, such as list comprehensions, nested scopes, and iterators/generators.

Coauthor Mark Lutz notes that Python has continued to grow in popularity since the first edition of the book was released, and consequently the demand for an updated introduction to the language has grown even greater. "Moreover, there have been some important changes to the language that make it easier to write certain types of code than in the past," Lutz adds. "It's important that people coming to the language today get the current Python picture and adopt modern Python coding styles. The new edition of our book will help them do that."

Beyond language features, this edition of Learning Python also includes new content for less-experienced programmers derived from recent Python classes taught by the authors, including fresh overviews of object- oriented programming and dynamic typing, new discussions of program launch and configuration options, new coverage of documentation sources, and more. Where appropriate, the authors have also included new use cases to make the application of language features more concrete.

The first part of Learning Python gives readers the information they'll need to understand and construct programs in the Python language, including types, operators, statements, classes, functions, modules, and exceptions. The authors then present more advanced material, showing how Python performs common tasks by offering real applications and the libraries available for those applications. Each chapter ends with a series of exercises that will test the reader's newly acquired Python skills and measure understanding.

Learning Python, Second Edition is a self-paced book that allows readers to focus on the core Python language in depth. As they work through the book, they'll gain a deep and complete understanding of the Python language that will help them to understand the larger application-level examples that they'll encounter on their own.

Praise for the first edition:

"If the language had manuals, they would undoubtedly be the texts from O'Reilly & Associates...Learning Python and Programming Python are definitive treatments."
--Andrew Binstock, "SD Times," May 2003

"Without exaggeration, without hyperbole, without unfounded adulation I can honestly say that this book is one of the best computer language books I have ever read! I read this book cover to cover without becoming bored or lost. In fact, I read the first 80 pages in one sitting. The authors include enough information to be complete without making the chapters unbearably long. The beautiful thing about this book is that the authors strike a near perfect balance between providing useful examples and detailed explanations. Whether you are an experienced computer programmer or a complete novice, this book is perfect for learning the Python language. I would also recommend this book as a text for a course in object oriented programming. Mark Lutz and David Ascher allow the reader to have fun learning a new language. All computer books should strive to be as fun to read and informative as Learning Python."
--Andrew Morrison, CedarLug, July 2001

"The computer book of the month is Mark Lutz's and David Ascher's Learning Python. This is a good general introduction, not only to Python, but to object-oriented programming languages in general."

Download

Advanced Linux Programming

1. Getting Started

THIS CHAPTER SHOWS YOU HOW TO PERFORM THE BASIC steps required to create a C or C++ Linux program. In particular, this chapter shows you how to create and modify C and C++ source code, compile that code, and debug the result. If you’re already accustomed to programming under Linux, you can skip ahead to Chapter 2, “Writing Good GNU/Linux Software;” pay careful attention to Section 2.3,“Writing and Using Libraries,” for information about static versus dynamic linking that you might not already know.

Throughout this book, we’ll assume that you’re familiar with the C or C++ programming languages and the most common functions in the standard C library. The source code examples in this book are in C, except when demonstrating a particular feature or complication of C++ programming.We also assume that you know how to perform basic operations in the Linux command shell, such as creating directories and copying files. Because many Linux programmers got started programming in the Windows environment, we’ll occasionally point out similarities and contrasts between Windows and Linux.

1.1 Editing with Emacs

An editor is the program that you use to edit source code. Lots of different editors are available for Linux, but the most popular and full-featured editor is probably GNU Emacs.

If you’re familiar with another editor, you can certainly use it instead. Nothing in the rest of this book depends on using Emacs. If you don’t already have a favorite Linux editor, then you should follow along with the mini-tutorial given here.

If you like Emacs and want to learn about its advanced features, you might consider reading one of the many Emacs books available. One excellent tutorial, Learning GNU Emacs, is written by Debra Cameron, Bill Rosenblatt, and Eric S. Raymond (O’Reilly, 1996).

1.1.1 Opening a C or C++ Source File

You can start Emacs by typing emacs in your terminal window and pressing the Return key.When Emacs has been started, you can use the menus at the top to create a new source file. Click the Files menu, choose Open Files, and then type the name of the file that you want to open in the “minibuffer” at the bottom of the screen.1 If you want to create a C source file, use a filename that ends in .c or .h. If you want to create a C++ source file, use a filename that ends in .cpp, .hpp, .cxx, .hxx, .C, or .H. When the file is open, you can type as you would in any ordinary word-processing program.To save the file, choose the Save Buffer entry on the Files menu.When you’re finished using Emacs, you can choose the Exit Emacs option on the Files menu.

If you don’t like to point and click, you can use keyboard shortcuts to automatically open files, save files, and exit Emacs.To open a file, type C-x C-f. (The C-x means to hold down the Control key and then press the x key.) To save a file, type C-x C-s.To exit Emacs, just type C-x C-c. If you want to get a little better acquainted with Emacs, choose the Emacs Tutorial entry on the Help menu.The tutorial provides you with lots of tips on how to use Emacs effectively.


Download

Sun - Solaris 9 SysAd Guide - Advanced

O'Reilly Learning Perl

Book description

Informed by their years of success at teaching Perl as consultants, the authors have re-engineered the Llama to better match the pace and scope appropriate for readers getting started with Perl, while retaining the detailed discussion, thorough examples, and eclectic wit for which the Llama is famous. If you ask Perl programmers today what book they relied on most when they were learning Perl, you'll find that an overwhelming majority will point to the Llama. With good reason. Other books may teach you to program in Perl, but this book will turn you into a Perl programmer.

Full Description

Learning Perl, better known as "the Llama book", starts the programmer on the way to mastery. Written by three prominent members of the Perl community who each have several years of experience teaching Perl around the world, this edition has been updated to account for all the recent changes to the language up to Perl 5.8. Perl is the language for people who want to get work done. It started as a tool for Unix system administrators who needed something powerful for small tasks. Since then, Perl has blossomed into a full-featured programming language used for web programming, database manipulation, XML processing, and system administration--on practically all platforms--while remaining the favorite tool for the small daily tasks it was designed for. You might start using Perl because you need it, but you'll continue to use it because you love it. Informed by their years of success at teaching Perl as consultants, the authors have re-engineered the Llama to better match the pace and scope appropriate for readers getting started with Perl, while retaining the detailed discussion, thorough examples, and eclectic wit for which the Llama is famous. The book includes new exercises and solutions so you can practice what you've learned while it's still fresh in your mind. Here are just some of the topics covered:

1.Perl variable types
2.subroutines
3.file operations
4.regular expressions
5.text processing
6.strings and sorting
7.process management
8.using third party modules

If you ask Perl programmers today what book they relied on most when they were learning Perl, you'll find that an overwhelming majority will point to the Llama. With good reason. Other books may teach you to program in Perl, but this book will turn you into a Perl programmer.


Download

JavaServer Pages - Examples (O'Reilly)

JavaServer Pages shows how to develop Java-based web applications without having to be a hardcore programmer. The author provides an overview of JSP concepts and illuminates how JSP fits into the larger picture of web applications.


There are chapters for web authors on generating dynamic content, handling session information, and accessing databases, as well as material for Java programmers on creating Java components and custom JSP tags for web authors to use in JSP pages.JavaServer Pages shows how to develop Java-based web applications without having to be a hardcore programmer.

The author provides an overview of JSP concepts and illuminates how JSP fits into the larger picture of web applications. There are chapters for web authors on generating dynamic content, handling session information, and accessing databases, as well as material for Java programmers on creating Java components and custom JSP tags for web authors to use in JSP pages.

Download

Zope and MySQL

Solaris Kernel Tuning for Security

Sams 2002 - Enhydra XMLC Java Presentation Development.

Sams | ISBN 0672322110 | PDF | 2,61 Mb | 504 Pages | 2002 Year

Enhydra XMLC Java Presentation Development is written for computer professionals, with a special focus on application architects, Java Web application developers, and those who are just ramping up on Java and are excited about immersing themselves into Web application development.

Download

(O'Reilly) - Learning Wireless Java

Preface

Part I. Introducing Java 2 Platform, Micro Edition (J2ME)

1. Overview of J2ME
What Is J2ME?
Downloading the J2ME Wireless Toolkit
A Simple Example

2. The Connected Limited Device Configuration (CLDC)
Examining the CLDC in Detail
Using the Standalone CLDC and KVM
CLDC Next Generation

3. The Mobile InformationDevice Profile (MIDP)
Mobile Information Devices
More About MIDlets

Part II. Programming with the CLDC and the MIDP

4. Working with MIDlets
The Application Manager
Creating MIDlets

5. MIDP GUI Programming
Why Not Reuse the AWT?
The MIDP GUI APIs
The High-Level MIDP APIs
Creating Low-Level GUI Components

6. MIDP Events
Screen Navigation
Handling Low-Level Events

7. Networking
Generic Connections
MIDP Connectivity
The HTTP Programming Model
Invoking Remote Applications from MIDlets
Wireless Session Tracking
MIDlet Networking Security

8. Database Programming
The Record Management System
Programming with the RMS

9. The MIDP for Palm OS
Installing the MIDP for Palm OS on the Windows Platform
Developing New Applications
PRC Command-Line Conversion
Advanced Java Applications
A Final Thought

Part III. API Quick Reference

A. The java.io Package

B. The java.lang Package

C. The java.util Package

D. The javax.microedition.io Package

E. The javax.microedition.lcdui Package

F. The javax.microedition.midlet Package

G. The javax.microedition.rms Package

H. Resources

Index

Download

XML Schema

The W3C's XML Schema offers a powerful set of tools for defining acceptable XML document structures and content. While schemas are powerful, that power comes with substantial complexity.

This book explains XML Schema foundations, a variety of different styles for writing schemas, simple and complex types, datatypes and facets, keys, extensibility, documentation, design choices, best practices, and limitations. Complete with references, a glossary, and examples throughout.

Table of Content
Chapter 1. Schema Uses and Development
Chapter 2. Our First Schema
Chapter 3. Giving Some Depth to Our First Schema
Chapter 4. Using Predefined Simple Datatypes
Chapter 5. Creating Simple Datatypes
Chapter 6. Using Regular Expressions to Specify Simple Datatypes
Chapter 7. Creating Complex Datatypes
Chapter 8. Creating Building Blocks
Chapter 9. Defining Uniqueness, Keys, and Key References
Chapter 10. Controlling Namespaces
Chapter 11. Referencing Schemas and Schema Datatypes in XML Documents
Chapter 12. Creating More Building Blocks Using Object-Oriented Features
Chapter 13. Creating Extensible Schemas
Chapter 14. Documenting Schemas
Chapter 15. Elements Reference Guide
Chapter 16. Datatype Reference Guide

Download

Learning XML


XML (Extensible Markup Language) is a flexible way to create "self-describing data"--and to share both the format and the data on the World Wide Web, intranets, and elsewhere.

In Learning XML, the author explains XML and its capabilities succinctly and professionally, with references to real-life projects and other cogent examples. Learning XML shows the purpose of XML markup itself, the CSS and XSL styling languages, and the XLink and XPointer specifications for creating rich link structures.

Table of Content
Chapter 1: Introduction
Chapter 2: Markup and Core Concepts
Chapter 3: Modeling Information
Chapter 4: Quality Control with Schemas
Chapter 5: Presentation Part I: CSS
Chapter 6: XPath and XPointer
Chapter 7: Transformation with XSLT
Chapter 8: Presentation Part II: XSL-FO
Chapter 9: Internationalization
Chapter 10: Programming

Download

Java Swing


The Swing classes eliminate Java's biggest weakness: its relatively primitive user interface toolkit. Java Swing helps you to take full advantage of the Swing classes, providing detailed descriptions of every class and interface in the key Swing packages. It shows you how to use all of the new components, allowing you to build state-of-the-art user interfaces and giving you the context you need to understand what you're doing. It's more than documentation; Java Swing helps you develop code quickly and effectively.

Table of Content
Chapter 1. Introducing Swing
Chapter 2. Jump Starting a Swing Application
Chapter 3. Swing Component Basics
Chapter 4. Labels and Icons
Chapter 5. Buttons
Chapter 6. Bounded Range Components
Chapter 7. Lists and Combo Boxes
Chapter 8. Swing Containers
Chapter 9. Internal Frames
Chapter 10. Swing Dialogs
Chapter 11. Specialty Panes and Layout Managers
Chapter 12. Chooser Dialogs
Chapter 13. Borders
Chapter 14. Menus and Toolbars
Chapter 15. Tables
Chapter 16. Advanced Table Examples
Chapter 17. Trees
Chapter 18. Undo
Chapter 19. Text 101
Chapter 20. Document Model and Events
Chapter 21. Styled Documents and JTextPane
Chapter 22. Carets, Highlighters, and Keymaps
Chapter 23. Text Views
Chapter 24. EditorKits and TextActions
Chapter 25. Programming with Accessibility
Chapter 26. Look & Feel
Chapter 27. Swing Utilities
Chapter 28. Swing Under the Hood

Download

Java Performance Tuning


Java Peformance Tuning, 2nd edition provides a comprehensive and indispensable guide to eliminating all types of performance problems. Using many real-life examples to work through the tuning process in detail, JPT shows how tricks such as minimizing object creation and replacing strings with arrays can really pay off in improving your code's performance. Tuning J2EE applications bears many similarities to tuning J2SE apps, but important and specific considerations apply. For this reason, Java Performance Tuning, Second Edition includes four new chapters: a new chapter on J2EE application tuning in general followed by chapters on tuning JDBC, servlets and JSPs, and EJBs.

Table of Content
Chapter 1: Introduction
Chapter 2: Profiling Tools
Chapter 3: Underlying JDK Improvements
Chapter 4: Object Creation
Chapter 5: Strings
Chapter 6: Exceptions, Assertions, Casts, and Variables
Chapter 7: Loops, Switches, and Recursion
Chapter 8: I/O, Logging, and Console Output
Chapter 9: Sorting
Chapter 10: Threading
Chapter 11: Appropriate Data Structures and Algorithms
Chapter 12: Distributed Computing
Chapter 13: When to Optimize
Chapter 14: Underlying Operating System and Network Improvements
Chapter 15: J2EE Performance Tuning
Chapter 16: Tuning JDBC
Chapter 17: Tuning Servlets and JSPs
Chapter 18: Tuning EJBs
Chapter 19: Further Resources

Download

Saturday, July 26, 2008

JSP - Java Server Pages , Second Edition

JavaServer Pages (JSP) technology provides an easy way to create dynamic web pages. JSP uses a component-based approach that allows web developers to easily combine static HTML for look-and-feel with Java components for dynamic features. The simplicity of this component-based model, combined with the cross-platform power of Java, allows a web development environment with enormous potential.

JavaServer Pages shows how to develop Java-based web applications without having to be a hardcore programmer. The author provides an overview of JSP concepts and discusses how JSP fits into the larger picture of web applications. Web page authors will benefit from the chapters on generating dynamic content, handling session information, accessing databases, authenticating users, and personalizing content. In the programming-oriented chapters, Java programmers learn how to create Java components and custom JSP tags for web authors to use in JSP pages.

Download

O'Reilly - Jakarta Struts


Book description

As popular as the Struts Framework for building web applications with Servlets and JSPs is becoming, the online documentation is inadequate, focusing on the most basic functionality and leaving out information crucial to developers writing today's complex web applications. O'Reilly's Programming Jakarta Struts was written by Chuck Cavaness after his internet company decided to adopt the framework, then spent months really figuring out how to use it to its fullest potential. He calls the books, "the culmination of lessons learned (the hard way) while building our application." Readers will benefit from the real-world, "this is how to do it" approach Cavaness takes to developing complex enterprise applications using Struts, and his focus on the 1.1 version of the Framework makes this the most up-to-date book available.

Download

O'Reilly.CGI.Programming

Redhat Linux Rhce Cramsession

Html - Linux Configuration & Installation (Slackware)

O'Reilly - J2Me In A Nutshell - Decrypted