Rants about JASS (Sol­ar­is Se­cur­ity Toolkit)

Re­cently I switched to a new cli­ent where the Sol­ar­is Se­cur­ity Toolkit (JASS) is ex­tens­ively used. I am now in the pro­cess of up­dat­ing some things, among them are JET and JASS. As part of this work I ree­valu­ate the loc­al JASS modi­fic­a­tions. Pre­vi­ously a cus­tom JASS pack­age was used, but in case JASS is up­dated by Or­acle at some point in time (and an up­date is really needed, see be­low), this would need some amount of work to find out the dif­fer­ences and to for­ward port them to the new ver­sion. If everything is well doc­u­mented, this should not be hard to do, but the per­son do­ing the work also needs to find the up-​to-​date docs.

To make it more easy I de­cided to change this. I now in­stall the of­fi­cial JASS pack­age via JET to­geth­er with the latest patch for it, and then let JET copy our modi­fic­a­tions over the in­stalled pack­age. In­stead of modi­fy­ing ex­ist­ing drivers, I cre­ated our own drivers with a ref­er­ence to the driver which served as a base.

While do­ing this I en­countered sev­er­al short­com­ings of JASS on Sol­ar­is 10.

There are sev­er­al FS based checks which do not make sense to do for the FS of zones in a glob­al zone (at least not the way I use JASS, so maybe a con­fig­ur­able way of chan­ging the be­ha­vi­or should serve for every­one). If zones are in­stalled in /​zones, you do not need to check for files without val­id UIDs (you surely find a lot of files, as the users are defined in­side the zones and not in the glob­al zone) or sim­il­ar things (even not for world writ­able files, as the zones are in­stalled in a root-​access-​only sub­tree and in­side the zones there may be oth­er se­cur­ity con­straints con­figured in­side JASS, read: it is the re­spons­ib­il­ity of JASS in­side the zone to do this). An easy solu­tion would be to ex­clude those FS which con­tain zones (and as we only have one sub­tree, I just hard­coded this in sev­er­al scripts).

I also miss the pos­sib­il­ity (maybe I over­looked a simple way) for the ssh check to lim­it the Al­low­Root­Lo­gin to spe­cif­ic hosts. JASS only checks yes or no, but can not lim­it it to spe­cif­ic hosts (e.g. via “Match IP/​hostname”). Of­ten you do not need to per­mit root-​logins (RBAC/​sudo/​…), but some­times it is the only way to handle a par­tic­u­lar edge-​case (or to speed up an ac­tion dra­mat­ic­ally), and in such cases you do not want to al­low root-​logins more than ne­ces­sary.

2 thoughts on “Rants about JASS (Sol­ar­is Se­cur­ity Toolkit)”

  1. Al­ex­an­der,

    You bring up some good points. If you have made any cus­tom­iz­a­tions to the JASS code base, feel free to send them over, and I’ll see if we can in­teg­rate them in­to the next ver­sion. FYI, SUN­W­jass 4.2.2 is avail­able here (http://​hub​.opensol​ar​is​.org/​b​i​n​/​d​o​w​n​l​o​a​d​/​P​r​o​j​e​c​t​+​s​s​t​/​f​i​l​e​s​/​S​U​N​W​j​a​s​s​-​4​.​2​.​2​.​p​k​g​.gz). If you get a chance to test it, please let me know how it goes.


    1. I will send you some­thing I can share later (maybe to­mor­row). For things I can not share, I will give a de­scrip­tion.

Leave a Reply

Your email address will not be published. Required fields are marked *