After I described how to compile ovaldi on CentOS and a simple test to verify it is working, in this post I'm going to describe how to use ovaldi to check cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 values of sysctl variables. More precisely, I'm going to check that IPv4 forwarding is turned off. The general idea behind this example is to give you a starting example on which you can build more complicated checks. Note that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is even more general idea. Namely, you can create your own security benchmarks that can check if certain security criteria are met, and if not, you can be alarmed by automatic monitoring process that is based on ovaldi.
In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 text that follows I'm referencing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following file. That is a simple and complete file that will check cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 value of net.ipv4.ip_foward sysctl variable. After you've downloaded this file, and assuming that you have your environment properly configured (see posts I referenced at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 beginning) cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n you can run ovaldi to do cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 check:
ovaldi -m -o sysctl-test.xml -a /opt/oval/share/ovaldi/xml
ovaldi will create cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 usual output files after running this command: ovaldi.log, results.xml, results.html and system-characteristics.xml. Each one of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m you can open in a brower. You should open cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m and check cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir content. system-characteristics.xml is interesting because cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re you can find what information was collected about cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system. Those values can be checked for in oval definitions XML file. Note that ovaldi collects only referenced data, not everything it could possibly collect.
Let us now dissect a bit oval definitions file, sysctl-test.xml. The basic structure of this file is:
... ... ... ...
Basically, what oval definition does is to define a series of test, each one describing what expected state of certain object is. Test cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365mselves can be combined in many different ways using AND and OR operators and nesting.
In our simple example object whose state we are interested in is ip_forwarding variable. So, if you look into XML file, inside element, you'll find that we define object of interest:
version="1" comment="forwarding is disabled" check="at least one" xmlns="http://oval.mitre.org/XMLSchema/oval-definitions-5#unix">
xmlns attribute is important. I had some problems with undefined element until I got that one correctly. In ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r words, all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 objects, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir state and tests are defined in XML documents in /opt/oval/share/ovaldi/xml directories. But, when using those be certain to correctly define namespace where cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are defined, or ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rwise ovaldi will complain that you are using unknown test, objects and/or states.
This particular test reference object that has to be checked and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 state in which this object has to be. Object itself is defined in element as follows:
As you can see, within name element you specify which sysctl variable you wish to check. The second part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 test is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 state in which object has to be. We want our object to have value 0, meaning forwarding is disabled. That check is performed using cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following within states element:
Obviously, you just place desired value within value element.
So, we saw that test consists of an object that has to be in particular state. The test itself is referenced in definition element (which is placed within definitions element). For that purpose you are using criterion element:
As you can probably guess, multiple criterions can be specified and in this case cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y will be bound with AND operator. You can nest criteria and criterion elements to get very complex tests.
When you are dealing with a single computer with a particular operating system, it is relatively easy to keep it safe. But, as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 number of machines grows and becomes more heterogeneous, keeping cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m safe becomes very donating task. You may have automated updates and such, but cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y have to be checked from time to time in order to see if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y function correctly. Still, if those computers are used (and by definition cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are, more or less frequently), cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y are like living organisms, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y change. No matter if you are tweaking particular installation because user requested some new functionality or he requested removal of something that annoys him, or you are trying to diagnose why something worked and now it doesn't work, you will change something. After you are finished, you might think that changes you've made won't influence anything and leave for some later time to reverse cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m, and eventually you'll forget about cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m. But, any unintended change might bring system into a risk. So, it is important to perform regular checks in order to spot changes. Since such checks are time consuming and error prone, it is a good practice to use some tool that will do it for you. That tool could be OVAL.
But even if you are not an system administrator, but e.g. auditor, you can also benefit from OVAL since checks that you have to perform could be in some way prescribed and automated. In that way you can check larger sample of systems and achieve better accuracy and confidence in obtained results than by manual checks.
OVAL is basically a language that describes checks to be made, more concretely, it's an application of XML. Those checks could be conditional (i.e. depend on a system under audit, or if a particular component is installed or not), and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y can be grouped with operators like AND, OR and NOT. There are many existing checks defined, for example, here are latest additions and updates, while here are complete databases for download. The tests are provided by some vendors (like RedHat) and also by community. Finally, you can add your own checks customized to your particular environment.
In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365mselves, those checks are worthless without a proper tool that will execute cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m. And here we have open source reference implementation, Ovaldi. Some security vendors have cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ir own versions, which of course cost money. Ovaldi, on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r hand, is free, but you are forced to use command line. Ovaldi interprets (in a way) given database and produces reports, in XML and HTML formats. HTML is great for viewing results, while XML for parsing and automating scans.
I was testing ovaldi on Linux before with mixed success, but now I decided to try it on Windows 7. The reason that I believe that its use on workstations and servers on a periodic basis will make those computers more secure, and, by extension, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 whole system more secure. In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 text that follows I'm going to describe a process of installing, manually running cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 tool and analyzing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 results. Automated testings I'll leave for some future post.
Download and install Ovaldi
Download page for Ovaldi is here. Note that this will take you to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 latest version at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 time this post was written, i.e. 5.10.1. So, before downloading check if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is a newer version, and if is, use that one. Don't forget to change all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 references from version 5.10.1 to your version in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 text that follows.
Anyway, you'll find cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re EXE versions for Windows, so select one that suits your environment. In my case that was 32-bit version, but if you have 64-bit version of Windows, download that one instead.
The file you've downloaded isn't regular installation file, so to install it you have to follow a bit different procedure. After download finishes, left click on file you downloaded and select option Run as administrator. Winzip dialog will appear which will ask you where to unzip (i.e. install) cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 files. Enter C:\Program Files\OVAL, or anything you wish but don't forget to change reference to that directory in later text to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 one you've entered. Click Unzip button, and that's it. Ovaldi is installed.
Environment setup
To be able to run ovaldi without typing cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 whole path to it, add it to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 PATH environment variable. To do that, click on Windows menu (left bottom corner) and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n do left click on Computer item. Select Properties item and in window that appears select Advanced System Settings (option on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 left). New window appears and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re you'll notice Environment Variables... button on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 right bottom. Click on it and new window appears. In this window cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is System variables pane. Find cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re variable PATH and click on Edit. At cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 end of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 line add cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following text:
;C:\Program Files\OVAL\ovaldi-5.10.1\
Be carefull not to erase existing values! Close all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 windows by clicking on OK, and close final window (cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 one opened with Properties on Computer) by clicking on X in upper right corner. Now, open command prompt and enter ovaldi followed by return. If you get help message cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n everything is OK and you can proceed to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 next step. Ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rwise, review previous steps.
Download file definitions
Now you have interpreter and you need definitions that will be run by interpreter. Go to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following page. There you'll see section Downloads by Version and Namespace. You need to select class to download based on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 version of oval interpreter you have. The following classes are available:
compliance - checks that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 installation is compliant with good security practices.
inventory - checks that produce results of what is installed.
miscellaneous
patch
vulnerability - test that verify if cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is a vulnerability present on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 machine.
When you click on one of those classes you are presented with a new page that gives you a list of available definitions grouped by different criteria. For example, by clicking on vulnerability class (probably cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 largest one) you can select download by platform, family or all. There are pros and cons of each one. If you select by family (or all) you don't have to think which platform you have, you get everything and oval interpreter will not be confused that, e.g. cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are Windows XP specific checks and you are running on Windows 7. But, this commodity goes at cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 expense of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 execution time.
For cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 purpose of initial testing of oval, I went to download by platform/vulnerabilities, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re I downloaded file microsoft.windows.7.xml which I renamed into microsoft.windows.7.vulnerabilities.xml. I also downloaded equivalent files from compliance and inventory classes naming cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m microsoft.windows.compliance.xml and microsoft.windows.inventory.xml, respectively. All those files I placed into working directory that, from now on, I'll reference by WORK_DIR identifier. So, whenever you see that string, replace it with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 full directory path of your working directory.
Running Ovaldi and viewing results
Ok, lets do cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 first scan to see what we are going to get. To start scan, open terminal windows, go to your working directory, and run cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following command (this is a single line!):
This command will check vulnerabilities that are present on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 system it runs on. Of course, only vulnerabilities defined in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 database (microsoft.windows.7.vulnerability.xml) will checked. If cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 tool reports that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are no vulnerabilities, it only means cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are no known vulnerabilities! The ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r options are:
Option -m. Don't check md5 sum of oval definitions file (in this case that is microsoft.windows.7.vulnerability.xml).
Option -a specifies where all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 auxiliary files necessary for interpreter are. For example, default style sheet file is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re, also, XML definitions and tests are also cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re. The default value of this option assumes that you are running ovaldi in its base directory (i.e. where it is installed) so it has to be specified in order for everything to work.
Option -o specifies oval definition file to use.
Option -r specifies XML result file. The default value is results.xml and in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 case of multiple runs, default file name will be overwritten. So, using this option prevents that from happening.
Option -x specifies HTML result file. This file is generated from XML result file by applying style sheet (XSL) file. Default file is used if none is specified on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 command line.
Option -d specifies in which file will be saved system characteristics, i.e. installed options, existing files, etc. used during interpreter run of oval definition file.
After this command finishes you'll have three new files in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 directory in which you run it (provided no errors occured). All of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 files can be viewed by Web browser (e.g. Mozilla Firefox) but only cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 file specified as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 argument to -x option is specifically meant to be viewed in such way. XML files are primarily used for automated processing.
When you open results file (20111025-results.html if you used cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 command given above) cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n you'll see four section named OVAL Results Generator Information, System Information, OVAL System Characteristics Generator Information and OVAL Definition Results.
The largest one will be OVAL Definition Results, which is a table with 5 columns. This first column is ID of a test performed, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 second is result of a test, eicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r it is positive (true) or negative (false). Then cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is a class of a test, eicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r inventory (i.e. something is installed or not), vulnerability checked, reference ID that links you to cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 description of that particular item on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Internet, and finally title that gives a short description of item.
Note: This post has been transferred from my old home page on January 4th, 2020 and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 date of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 publication is only approximate.
... or to be honest, a start of OVAL definitions for F9F14
and CentOS, i.e. work in (very long) progress. I'm just learning
how to use this technology, and if it's of any use at all! :)
In short, OVAL is a XML based
specification language for vulnerability assessment. It is already
used by different vendors and it will probably see wider adoption
as NIST is pushing OVAL as a part of automated solution for
vulnerability assessment and management. For example, RedHat
publishes
vulnerability advisories in OVAL format.
I have to stress that I didn't yet fully learned cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 idea
behind OVAL as well as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 technology used so cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is a high
probability of errors in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following text. If you spot an error
please mail me cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 correction!
What is OVAL and how to use it
As I already said, OVAL is a language that describes checks to be
performed on a system in order to determine if any vulnerability
is present on it, eicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r to a software bug or to a configuration
setting. This is performed via tool in a package called
ovaldi, which is available in Fedora's RPM repository.
So, you should install it as usual using cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 yum command. After
installation process finishes, you'll have command line tool called,
surprisingly, ovaldi! :) The next thing you need in order
to use this tool are definitions of vulnerabilities. Unfortunately,
cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are no vulnerability descriptions for Fedora in OVAL form.
I'll try to make few, for Fedora and CentOS. In case I missed some
repository, please notify me via e-mail message! While we are at
CentOS, it's possible that RedHat's OVAL definitions could be used
with a little bit of hacking, but I didn't try it so it could
prove false!
Anyway, in order to try ovaldi tool you need OVAL definitions.
You can use RedHat's but all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 results will be false
which is expected as you are not running RedHat on your computer.
So, in order for you to try oval, download
this definition file I prepared.
It is very simple OVAL definition and only checks which version of
Fedora is installed on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 computer, 8 or 9.
Running ovaldi
To run ovaldi it has to have schema definitions. Now, this is
interesting as those are placed in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 /usr/share/ovaldi
directory but cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 tool looks for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 current directory.
Even more interesting is that I can't seem to identify option
that would allow me to change schema path. To get around this
problem, copy all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 content from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 /usr/share/ovaldi
directory into current directory. Be carefull to create
separate working directory for this or ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rwise you'll have a
mess on your disk!
There are two ways to define where schema files will be searched.
The first one is using cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 option -a. The default value
for this option is /usr/share/ovaldi but for some reason
this value is not used, i.e. ovaldi tool can not find
schema files. The ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r, and not so good(!), approach is to encode
path in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 XML file itself. This approach will be described later.
Now, run cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ovaldi tool as follows:
$ ovaldi -o fedora.9.oval.xml -m
Note that in real situations is could be possible that you'll
have to run ovaldi as root since it could try to access
data not accessible to ordinary users. In this case it is
not necessary as cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 tests are very simple.
The output from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 command on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 Fedora 9 will be:
----------------------------------------------------
OVAL Definition Interpreter
Version: 5.4 Build: 2
Build date: Jun 7 2008 15:06:57
Copyright (c) 2002-2008 - The MITRE Corporation
----------------------------------------------------
Tue Jul 8 17:00:52 2008
** parsing fedora.9.oval.xml file.
- validating xml schema.
** checking schema version
- Schema version - 5.4
** skipping Schematron validation
** creating a new OVAL System Charateristics file.
** gacá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365ring data for cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OVAL definitions.
Collecting object: FINISHED
** saving data model to system-characteristics.xml.
** running cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OVAL Definition analysis.
Analyzing definition: FINISHED
** OVAL definition results.
OVAL Id Result
-------------------------------------------------------
oval:org.fedoraproject.oval:def:1 true oval:org.fedoraproject.oval:def:2 false
-------------------------------------------------------
** finished evaluating OVAL definitions.
** saving OVAL results to results.xml.
** running OVAL Results xsl: results_to_html.xsl.
----------------------------------------------------
The part that is in bold shows cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 results of two tests. The
one that is true is a test for Fedora 9, while cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r one
is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 test for Fedora 8. Apart from cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 output on stdout
cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are few files created along cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 way, those are:
results.html is HTML version
of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 results. I slightly modified this file in order to remove
IP addresses, but ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365rwise it is untouched!
results.xml is XML version of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 previous file.
results_to_html.xsl
system-characteristics.xml is where you'll find some data
that cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 tests run against. It is usefull for debugging purposes!
ovaldi.log is basically what was seen on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 stdout.
What's in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OVAL file
The simple OVAL file I provided checks if Fedora 8 or 9 is running
on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 computer where ovaldi is started. So, before going
furcá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r open it in some text or XML editor. Few notes to bare in mind
while we step through this file:
I wrote it based on RedHat's definition so cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are some
references on RedHat left in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 file. I think cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365y
are harmless, and also, I don't (yet) know what to
place cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re.
As an ID for all cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 stuff in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 file I used org.fedoraproject.oval
namespace!
General structure of OVAL definition file
The file has cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following general structure:
First cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re is XML PI element that defines it's XML version 1.0
as well as that UTF-8 coding is used.
Top level element is oval_definitions and it has attributes
with schemas that I just c/p!
The first element is generator. I didn't changed it, but
I suppose it's for metadata about file itself, e.g. who created it,
with what tool, etc.
Then cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following important four parts:
definitions that define checks to be performed.
tests defines basic tests to be performed.
objects are cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 elements on which tests are performed.
For example, if version of some package is checked, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365
object is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 package.
states are states that are checked on objects. For
example, certain package is an object, version is a state.
Probably it could be more complicated than that, but this
is enough to get and idea.
Example OVAL definition file
So what we have in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 example file? We are determining cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365
exact version of Fedora running on cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 test computer and this
is done by looking what cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 version (state) of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 package
fedora-release is present. Thus, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 object is cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365
package, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 state is eicá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r version 8 or 9.
In cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 example file, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 object is specified in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 objects
part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 definition file as follows:
fedora-release
rpminfo_object element is predefined in OVAL library
and it's used to query RPM objects, i.e. packages.
In our case, we are querying for package with cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 name
fedora-release. The attribute id is used
for referencing this definition in ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r parts of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 file!
The ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r part of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 equation, states, are defined within cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365
states element of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 OVAL definition file as
follows:
98
The state simply matches cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 version variable (identified by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365
version attribute) with number 8 (for Fedora 8) or 9
(for Fedora 9). Also, id attributes are used for referencing
those states in ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r parts of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 file.
Now, we have two tests. One that checks for Fedora 8 and anocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r one
for Fedora 9. Those go within tests element.
Note that each of those two tests simply says that object
referenced by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 object element has to be in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365
state referenced by cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 state element. So, what we
have here are two tests that check if a single object is in
cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 one state and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365n in cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 ocá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365r.
Finally, beacuse both tests have to be executed, and cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 results
of each one of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m has to be printed, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365re are two definitions.
If we are interested in some logical combination of cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 two
tests we could write cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365m in a single definition. So, cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365
definition that checks for Fedora 9 is within definitions
element and has cá cược thể thao bet365_cách nạp tiền vào bet365_ đăng ký bet365 following structure: