Print this page
uts: Allow for address space randomisation.
Randomise the base addresses of shared objects, non-fixed mappings, the
stack and the heap.  Introduce a service, svc:/system/process-security,
and a tool psecflags(1) to control and observe it


 544 @ MSG_CNOTE_T_PR_OLDPRI                 "pr_oldpri:"
 545 @ MSG_CNOTE_T_PR_ONPRO                  "pr_onpro:"
 546 @ MSG_CNOTE_T_PR_OTTYDEV                "pr_ottydev:"
 547 @ MSG_CNOTE_T_PR_PCTCPU                 "pr_pctcpu:"
 548 @ MSG_CNOTE_T_PR_PCTMEM                 "pr_pctmem:"
 549 @ MSG_CNOTE_T_PR_PGID                   "pr_pgid:"
 550 @ MSG_CNOTE_T_PR_PGRP                   "pr_pgrp:"
 551 @ MSG_CNOTE_T_PR_PID                    "pr_pid:"
 552 @ MSG_CNOTE_T_PR_POOLID                 "pr_poolid:"
 553 @ MSG_CNOTE_T_PR_PPID                   "pr_ppid:"
 554 @ MSG_CNOTE_T_PR_PRI                    "pr_pri:"
 555 @ MSG_CNOTE_T_PR_PROCESSOR              "pr_processor:"
 556 @ MSG_CNOTE_T_PR_PROJID                 "pr_projid:"
 557 @ MSG_CNOTE_T_PR_PSARGS                 "pr_psargs:"
 558 @ MSG_CNOTE_T_PR_REG                    "pr_reg:"
 559 @ MSG_CNOTE_T_PR_RGID                   "pr_rgid:"
 560 @ MSG_CNOTE_T_PR_RSSIZE                 "pr_rssize:"
 561 @ MSG_CNOTE_T_PR_RUID                   "pr_ruid:"
 562 @ MSG_CNOTE_T_PR_RVAL1                  "pr_rval1:"
 563 @ MSG_CNOTE_T_PR_RVAL2                  "pr_rval2:"

 564 @ MSG_CNOTE_T_PR_SETS                   "pr_sets:"
 565 @ MSG_CNOTE_T_PR_SETSIZE                "pr_setsize:"
 566 @ MSG_CNOTE_T_PR_SGID                   "pr_sgid:"
 567 @ MSG_CNOTE_T_PR_SID                    "pr_sid:"
 568 @ MSG_CNOTE_T_PR_SIGHOLD                "pr_sighold:"
 569 @ MSG_CNOTE_T_PR_SIGPEND                "pr_sigpend:"
 570 @ MSG_CNOTE_T_PR_SIGTRACE               "pr_sigtrace:"
 571 @ MSG_CNOTE_T_PR_SIZE                   "pr_size:"
 572 @ MSG_CNOTE_T_PR_SNAME                  "pr_sname:"
 573 @ MSG_CNOTE_T_PR_START                  "pr_start:"
 574 @ MSG_CNOTE_T_PR_STATE                  "pr_state:"
 575 @ MSG_CNOTE_T_PR_STIME                  "pr_stime:"
 576 @ MSG_CNOTE_T_PR_STKBASE                "pr_stkbase:"
 577 @ MSG_CNOTE_T_PR_STKSIZE                "pr_stksize:"
 578 @ MSG_CNOTE_T_PR_STYPE                  "pr_stype:"
 579 @ MSG_CNOTE_T_PR_SUID                   "pr_suid:"
 580 @ MSG_CNOTE_T_PR_SYSARG                 "pr_sysarg:"
 581 @ MSG_CNOTE_T_PR_SYSCALL                "pr_syscall:"
 582 @ MSG_CNOTE_T_PR_SYSENTRY               "pr_sysentry:"
 583 @ MSG_CNOTE_T_PR_SYSEXIT                "pr_sysexit:"
 584 @ MSG_CNOTE_T_PR_TASKID                 "pr_taskid:"
 585 @ MSG_CNOTE_T_PR_TIME                   "pr_time:"
 586 @ MSG_CNOTE_T_PR_TSTAMP                 "pr_tstamp:"
 587 @ MSG_CNOTE_T_PR_TTYDEV                 "pr_ttydev:"
 588 @ MSG_CNOTE_T_PR_UID                    "pr_uid:"
 589 @ MSG_CNOTE_T_PR_USTACK                 "pr_ustack:"
 590 @ MSG_CNOTE_T_PR_UTIME                  "pr_utime:"
 591 @ MSG_CNOTE_T_PR_WCHAN                  "pr_wchan:"
 592 @ MSG_CNOTE_T_PR_WHAT                   "pr_what:"
 593 @ MSG_CNOTE_T_PR_WHO                    "pr_who:"
 594 @ MSG_CNOTE_T_PR_WHY                    "pr_why:"
 595 @ MSG_CNOTE_T_PR_WSTAT                  "pr_wstat:"
 596 @ MSG_CNOTE_T_PR_ZOMB                   "pr_zomb:"
 597 @ MSG_CNOTE_T_PR_ZONEID                 "pr_zoneid:"


 598 @ MSG_CNOTE_T_SA_FLAGS                  "sa_flags:"
 599 @ MSG_CNOTE_T_SA_HANDLER                "sa_handler:"
 600 @ MSG_CNOTE_T_SA_MASK                   "sa_mask:"
 601 @ MSG_CNOTE_T_SA_SIGACTION              "sa_sigaction:"
 602 @ MSG_CNOTE_T_SIVAL_INT                 "sival_int:"
 603 @ MSG_CNOTE_T_SIVAL_PTR                 "sival_ptr:"
 604 @ MSG_CNOTE_T_SI_ADDR                   "si_addr:"
 605 @ MSG_CNOTE_T_SI_BAND                   "si_band:"
 606 @ MSG_CNOTE_T_SI_CODE                   "si_code:"
 607 @ MSG_CNOTE_T_SI_CTID                   "si_ctid:"
 608 @ MSG_CNOTE_T_SI_ENTITY                 "si_entity"
 609 @ MSG_CNOTE_T_SI_ERRNO                  "si_errno:"
 610 @ MSG_CNOTE_T_SI_PID                    "si_pid:"
 611 @ MSG_CNOTE_T_SI_SIGNO                  "si_signo:"
 612 @ MSG_CNOTE_T_SI_STATUS                 "si_status:"
 613 @ MSG_CNOTE_T_SI_UID                    "si_uid:"
 614 @ MSG_CNOTE_T_SI_VALUE                  "si_value:"
 615 @ MSG_CNOTE_T_SI_ZONEID                 "si_zoneid:"
 616 @ MSG_CNOTE_T_SS_FLAGS                  "ss_flags:"
 617 @ MSG_CNOTE_T_SS_SIZE                   "ss_size:"


 641 @ MSG_PHDRNAM_CAPINFO           ".SUNW_capinfo(phdr)"
 642 @ MSG_PHDRNAM_CAPCHAIN          ".SUNW_capchain(phdr)"
 643 @ MSG_PHDRNAM_DYN               ".dynamic(phdr)"
 644 @ MSG_PHDRNAM_DYNSTR            ".dynstr(phdr)"
 645 @ MSG_PHDRNAM_DYNSYM            ".dynsym(phdr)"
 646 @ MSG_PHDRNAM_FINIARR           ".fini_array(phdr)"
 647 @ MSG_PHDRNAM_HASH              ".hash(phdr)"
 648 @ MSG_PHDRNAM_INITARR           ".init_array(phdr)"
 649 @ MSG_PHDRNAM_INTERP            ".interp(phdr)"
 650 @ MSG_PHDRNAM_LDYNSYM           ".SUNW_ldynsym(phdr)"
 651 @ MSG_PHDRNAM_MOVE              ".move(phdr)"
 652 @ MSG_PHDRNAM_NOTE              ".note(phdr)"
 653 @ MSG_PHDRNAM_PREINITARR        ".preinit_array(phdr)"
 654 @ MSG_PHDRNAM_REL               ".rel(phdr)"
 655 @ MSG_PHDRNAM_RELA              ".rela(phdr)"
 656 @ MSG_PHDRNAM_SYMINFO           ".syminfo(phdr)"
 657 @ MSG_PHDRNAM_SYMSORT           ".SUNW_symsort(phdr)"
 658 @ MSG_PHDRNAM_TLSSORT           ".SUNW_tlssort(phdr)"
 659 @ MSG_PHDRNAM_UNWIND            ".eh_frame_hdr(phdr)"
 660 @ MSG_PHDRNAM_VER               ".SUNW_version(phdr)"



 544 @ MSG_CNOTE_T_PR_OLDPRI                 "pr_oldpri:"
 545 @ MSG_CNOTE_T_PR_ONPRO                  "pr_onpro:"
 546 @ MSG_CNOTE_T_PR_OTTYDEV                "pr_ottydev:"
 547 @ MSG_CNOTE_T_PR_PCTCPU                 "pr_pctcpu:"
 548 @ MSG_CNOTE_T_PR_PCTMEM                 "pr_pctmem:"
 549 @ MSG_CNOTE_T_PR_PGID                   "pr_pgid:"
 550 @ MSG_CNOTE_T_PR_PGRP                   "pr_pgrp:"
 551 @ MSG_CNOTE_T_PR_PID                    "pr_pid:"
 552 @ MSG_CNOTE_T_PR_POOLID                 "pr_poolid:"
 553 @ MSG_CNOTE_T_PR_PPID                   "pr_ppid:"
 554 @ MSG_CNOTE_T_PR_PRI                    "pr_pri:"
 555 @ MSG_CNOTE_T_PR_PROCESSOR              "pr_processor:"
 556 @ MSG_CNOTE_T_PR_PROJID                 "pr_projid:"
 557 @ MSG_CNOTE_T_PR_PSARGS                 "pr_psargs:"
 558 @ MSG_CNOTE_T_PR_REG                    "pr_reg:"
 559 @ MSG_CNOTE_T_PR_RGID                   "pr_rgid:"
 560 @ MSG_CNOTE_T_PR_RSSIZE                 "pr_rssize:"
 561 @ MSG_CNOTE_T_PR_RUID                   "pr_ruid:"
 562 @ MSG_CNOTE_T_PR_RVAL1                  "pr_rval1:"
 563 @ MSG_CNOTE_T_PR_RVAL2                  "pr_rval2:"
 564 @ MSG_CNOTE_T_PR_SECFLAGS               "pr_secflags:"
 565 @ MSG_CNOTE_T_PR_SETS                   "pr_sets:"
 566 @ MSG_CNOTE_T_PR_SETSIZE                "pr_setsize:"
 567 @ MSG_CNOTE_T_PR_SGID                   "pr_sgid:"
 568 @ MSG_CNOTE_T_PR_SID                    "pr_sid:"
 569 @ MSG_CNOTE_T_PR_SIGHOLD                "pr_sighold:"
 570 @ MSG_CNOTE_T_PR_SIGPEND                "pr_sigpend:"
 571 @ MSG_CNOTE_T_PR_SIGTRACE               "pr_sigtrace:"
 572 @ MSG_CNOTE_T_PR_SIZE                   "pr_size:"
 573 @ MSG_CNOTE_T_PR_SNAME                  "pr_sname:"
 574 @ MSG_CNOTE_T_PR_START                  "pr_start:"
 575 @ MSG_CNOTE_T_PR_STATE                  "pr_state:"
 576 @ MSG_CNOTE_T_PR_STIME                  "pr_stime:"
 577 @ MSG_CNOTE_T_PR_STKBASE                "pr_stkbase:"
 578 @ MSG_CNOTE_T_PR_STKSIZE                "pr_stksize:"
 579 @ MSG_CNOTE_T_PR_STYPE                  "pr_stype:"
 580 @ MSG_CNOTE_T_PR_SUID                   "pr_suid:"
 581 @ MSG_CNOTE_T_PR_SYSARG                 "pr_sysarg:"
 582 @ MSG_CNOTE_T_PR_SYSCALL                "pr_syscall:"
 583 @ MSG_CNOTE_T_PR_SYSENTRY               "pr_sysentry:"
 584 @ MSG_CNOTE_T_PR_SYSEXIT                "pr_sysexit:"
 585 @ MSG_CNOTE_T_PR_TASKID                 "pr_taskid:"
 586 @ MSG_CNOTE_T_PR_TIME                   "pr_time:"
 587 @ MSG_CNOTE_T_PR_TSTAMP                 "pr_tstamp:"
 588 @ MSG_CNOTE_T_PR_TTYDEV                 "pr_ttydev:"
 589 @ MSG_CNOTE_T_PR_UID                    "pr_uid:"
 590 @ MSG_CNOTE_T_PR_USTACK                 "pr_ustack:"
 591 @ MSG_CNOTE_T_PR_UTIME                  "pr_utime:"
 592 @ MSG_CNOTE_T_PR_WCHAN                  "pr_wchan:"
 593 @ MSG_CNOTE_T_PR_WHAT                   "pr_what:"
 594 @ MSG_CNOTE_T_PR_WHO                    "pr_who:"
 595 @ MSG_CNOTE_T_PR_WHY                    "pr_why:"
 596 @ MSG_CNOTE_T_PR_WSTAT                  "pr_wstat:"
 597 @ MSG_CNOTE_T_PR_ZOMB                   "pr_zomb:"
 598 @ MSG_CNOTE_T_PR_ZONEID                 "pr_zoneid:"
 599 @ MSG_CNOTE_T_PSF_EFFECTIVE             "psf_effective:"
 600 @ MSG_CNOTE_T_PSF_INHERIT               "psf_inherit:"
 601 @ MSG_CNOTE_T_SA_FLAGS                  "sa_flags:"
 602 @ MSG_CNOTE_T_SA_HANDLER                "sa_handler:"
 603 @ MSG_CNOTE_T_SA_MASK                   "sa_mask:"
 604 @ MSG_CNOTE_T_SA_SIGACTION              "sa_sigaction:"
 605 @ MSG_CNOTE_T_SIVAL_INT                 "sival_int:"
 606 @ MSG_CNOTE_T_SIVAL_PTR                 "sival_ptr:"
 607 @ MSG_CNOTE_T_SI_ADDR                   "si_addr:"
 608 @ MSG_CNOTE_T_SI_BAND                   "si_band:"
 609 @ MSG_CNOTE_T_SI_CODE                   "si_code:"
 610 @ MSG_CNOTE_T_SI_CTID                   "si_ctid:"
 611 @ MSG_CNOTE_T_SI_ENTITY                 "si_entity"
 612 @ MSG_CNOTE_T_SI_ERRNO                  "si_errno:"
 613 @ MSG_CNOTE_T_SI_PID                    "si_pid:"
 614 @ MSG_CNOTE_T_SI_SIGNO                  "si_signo:"
 615 @ MSG_CNOTE_T_SI_STATUS                 "si_status:"
 616 @ MSG_CNOTE_T_SI_UID                    "si_uid:"
 617 @ MSG_CNOTE_T_SI_VALUE                  "si_value:"
 618 @ MSG_CNOTE_T_SI_ZONEID                 "si_zoneid:"
 619 @ MSG_CNOTE_T_SS_FLAGS                  "ss_flags:"
 620 @ MSG_CNOTE_T_SS_SIZE                   "ss_size:"


 644 @ MSG_PHDRNAM_CAPINFO           ".SUNW_capinfo(phdr)"
 645 @ MSG_PHDRNAM_CAPCHAIN          ".SUNW_capchain(phdr)"
 646 @ MSG_PHDRNAM_DYN               ".dynamic(phdr)"
 647 @ MSG_PHDRNAM_DYNSTR            ".dynstr(phdr)"
 648 @ MSG_PHDRNAM_DYNSYM            ".dynsym(phdr)"
 649 @ MSG_PHDRNAM_FINIARR           ".fini_array(phdr)"
 650 @ MSG_PHDRNAM_HASH              ".hash(phdr)"
 651 @ MSG_PHDRNAM_INITARR           ".init_array(phdr)"
 652 @ MSG_PHDRNAM_INTERP            ".interp(phdr)"
 653 @ MSG_PHDRNAM_LDYNSYM           ".SUNW_ldynsym(phdr)"
 654 @ MSG_PHDRNAM_MOVE              ".move(phdr)"
 655 @ MSG_PHDRNAM_NOTE              ".note(phdr)"
 656 @ MSG_PHDRNAM_PREINITARR        ".preinit_array(phdr)"
 657 @ MSG_PHDRNAM_REL               ".rel(phdr)"
 658 @ MSG_PHDRNAM_RELA              ".rela(phdr)"
 659 @ MSG_PHDRNAM_SYMINFO           ".syminfo(phdr)"
 660 @ MSG_PHDRNAM_SYMSORT           ".SUNW_symsort(phdr)"
 661 @ MSG_PHDRNAM_TLSSORT           ".SUNW_tlssort(phdr)"
 662 @ MSG_PHDRNAM_UNWIND            ".eh_frame_hdr(phdr)"
 663 @ MSG_PHDRNAM_VER               ".SUNW_version(phdr)"
 664