Having authenticated with WebAuth using an SSO username and password, the PHP script is executed. As you can see, the PHP script is passed a parameter which is the URL of a login page of a Rails application. The only thing the PHP script does is to redirect to that URL passing a parameter that is a base64 encoded string: https://www.abcd.ox.ac.uk:8113/apps/contacts/login?id=base64string The id parameter is the base64 encoded version of an encryption of the username and the current date and time.
Read the rest of this entry »
The Flash form consists of 2 basic parts. One part is the group of text fields that make up the form. These are actually contained within a movieclip aptly named “form.” Secondly, you have the send button. This will be the button that activates the code that sends the form information to the PHP file. At that point, Flash’s job is done. It’s then up to the PHP script to make sure the email gets sent.
1. Start off by making the appropriate form fields. Make sure these are input fields and not static or dynamic text fields Include as many as you want. Each will be sent to the PHP file where they can then be sorted. This example uses 3.
Read the rest of this entry »
We present a practical protection mechanism against SQL injection attacks. Such attacks target databases that are accessible through a web front-end, and take advantage of flaws in the input validation logic of Web components such as CGI scripts. We apply the concept of instruction-set randomization to SQL, creating instances of the language that are unpredictable to the attacker. Queries injected by the attacker will be caught and terminated by the database parser. We show how to use this technique with the MySQL database using an intermediary proxy that translates the random SQL to its standard language. Our mechanism imposes negligible performance overhead to query processing and can be easily retrofitted to existing systems.
Read the rest of this entry »
What: We are developing a tool to track variables and their values in C programs as they change at runtime. Because of the low-level, unrestricted memory access the language allows, the challenge lies in collecting accurate information without disrupting the program’s execution. Our approach combines techniques from profiling with memory tracking to analyze dynamic allocation throughout the lifetime of a program.
Read the rest of this entry »
Python was created by Guido van Rossum in 1990 to solve problems in the development of the Amoeba operating system. It is named after the British television show Monty Python’s Flying Circus. The use of Python has grown steadily over 1990’s to its current state where it is used in a variety of applications and environments.
Read the rest of this entry »
The JavaFX Script programming language lets you create modern looking applications with sophisticated graphical user interfaces. It was designed from the ground up to make GUI programming easy; its declarative syntax, data binding model, animation support, and built-in visual effects let you accomplish more work with less code, resulting in shorter development cycles and increased productivity.
Read the rest of this entry »
This provides a brief introduction to using Stata 8.0 for the dataset analysis. Stata is available on all of the computers in the Kennedy School’s computer lab. If you have a home computer you may want to purchase a copy of Stata from the CMO. Stata is available for Windows98, Windows 2000, Windows ME, Windows XP, Windows NT, Macintosh, and UNIX operating systems. The Stata User’s Guide is also available from the CMO.
Read the rest of this entry »
It is simple to build R and R packages for Microsoft Windows from an ix86 Linux machine. This is very useful to package developers who are familiar with Unix tools and feel that widespread dissemination of their work is important. The resulting R binaries and binary library packages require only a minimal amount of work to install under Microsoft Windows. While testing is always important for quality assurance and control, we have found that the procedure usually results in reliable packages.
Read the rest of this entry »