Age | Commit message (Collapse) | Author |
|
|
|
* Change hostinfo parent_uptime and child_uptime to uint32_t (138 years
is a long time)
|
|
* Add upload lock mechanism to prevent multiple instances trying to
infect the same host simultaneously
* Add "upload guard". The upload guard cleans up the lock file and the
upload directory in the event of upload failure
* Fix bug in bne_vssh_flush_f()
* prne_strzero() accepts NULL
* Fix Proone: missing prne_dvault_reset() calls
|
|
* Use getopt in proone-bne
* Call pth_yield() where necessary
* htbt: truncate downloaded binary if actual size of data transfered is
less than alloc_len
* prne_rcb_param.self is not optional as proone-bne uses nybin
* Add --vercmp option for proone-bne to test M2M bin update
* Refactor proone-htbtclient
* Protocol change: prne_htbt_bin_meta.alloc_len is now size_t
* Add convenience functions: prne_realloc_str(), prne_redup_str()
|
|
* Use autoheader
* Add --enable-minmem
* Add OS code. Bin archive and protocol changed accordingly
* Add instance flags in hostinfo frame. Bitfield util added for this
* Add org_id in hostinfo for lineage record
* SQL schema change: store integer value of hostinfo arch and os
* Remove config.c
* prne_index_nybin() now sets errno
* Instance ids are now preserved for lineage record
* Proone: remove arguments after init
* Fix bug in prne_htbt_ser_bin_meta(): alloc_len is not checked
|
|
* htbt overhaul
* Abandon async slv io. slv io is now synchronous
* htbt_do_cmd()
* w/ detach flag: set up closed pipes for stdio
* Create new pg for child and kill the pg on error
* Do waitpid() w/ timeout
* Wait for child spawn w/ timeout
* Always reap child
* Add fork cb for clean up code(to unmask signals, deinit libs)
* Protocol overhaul
* Use stdio frames to transfer binary data for
PRNE_HTBT_OP_UP_BIN and PRNE_HTBT_OP_RUN_BIN op
* bin_meta bin_size -> alloc_len. This is an optional field now
* Fix protocol
* detach flag of cmd_head not being (de)serialised
* cmd_head (d)ser funcs not setting actual correctly
* Proone: call setsid() on daemonisation
* Fix compilation error caused by missing <errno.h>
|
|
* Change signature of tmpfile() cb
* Add PRNE_DATA_KEY_VER_MAT
* Add prne_try_alloc_iobuf()
* Fix htbt: don't run cncp when both resolv and cnc_txtrec are not passed
* Impl upbin cb on proone-bne
* Fix proone-htbtclient: content of status frame was discarded
* htbt is now responsible for setting FD_CLOEXEC on temp files
* Changes in mttools for valgrind run
* Add proone-test_iobuf
* Fix event leak in resolv
* src/test-resolv.sh: run proone-resolv on valgrind
* Add prne_cmp_uuid_asc() and prne_cmp_uuid_desc() for version matrix
*
|
|
* Fix missing feature: renaming downloaded exec to the value of
PRNE_DATA_KEY_EXEC_NAME
|
|
* Parameterize prne_start_bin_rcb() args
* Change value of PRNE_ARCH_NONE to 0 to use it over the wire (problem
arises deserialising)
* tostr() and fstr() functions set errno to EINVAL
* Run bne without binary archive to support same-arch infection
|
|
* Add prne_start_bin_rcb_compat()
* PRNE_HTBT_OP_NY_BIN -> PRNE_HTBT_OP_UP_BIN. "nybin" is now the name of
the file format
* htbt
* Fix broken hover redirection (HTBT_LMK_HOVER removed)
* HTBT_MAIN_REQ_Q_SIZE
* Impl PRNE_HTBT_OP_NOOP response
* Fix PRNE_HTBT_OP_SOLICIT is always sent with id 1
* proone
* Fix bugs caused by not scrubbing the shared global memory
* Fix exec() fail when upbin request with args
* Removed do_recombination() as it's not efficient. Now the
authoritive end has to do the recombination
* PRNE_HTBT_OP_RCB, PRNE_HTBT_STATUS_SUB reserved for future impl
|
|
|
|
* Increase socket operation timeout of htbt and resolv
* htbt: use of term "jitter"
* htbt: Fix bug where debug print is not suppresses when `PRNE_VERBOSE <
PRNE_VL_DBG0`
* Fix crash bug caused by SIGPIPE
* Proone: `sleep(1)` when fork fails
|
|
* Fix typo in htbt.c
|
|
|
|
both process instantly. Use `killall -INT` to signal normal exit.
|
|
* Apply recon and bne to proone
* Add callback contexts on htbt and bne
* Fix mem leak in bne_sh_cleanup_upload()
* Use prne_static_assert() instead of _Static_assert()
* Use prne_free_worker() rather than calling free_ctx()
* Add prne_eq_ipaddr()
* bne
* Add prne_bne_result::ny_instance to impl infect_cnt
* Don't delete tmp upload dir after successful bne_sh_run_exec() so
that proone can make tmp files
* Silently ignore PRNE_BNE_V_HTBT if htbt_ssl_conf is not set
* Add prne_bne_get_subject()
* htbt
* Fix crash bug when running without resolv
* proone: set pth priority
|
|
* Lock file acquisition failure is not an error
|
|
* Add base64 upload method
* Remove pollin_f()
* Caller should terminate cmdline
* Newline style detection for \r\n, \r\0, \r or \n
* Issue "enable", "system" and "shell" on set up
*
* Rename prne_strnstr() -> prne_memmem()
* Added prne_rebuild_str() for efficiency
* Daemonise proone so that bne can clean up after upload
|
|
* Add prne_index_nybin()
|
|
* Fix *_param_t leak and memory error
|
|
* Change "PRNE_DEBUG" macro use
* Add "PRNE_VERBOSE"
* Impl "recon"
* Add "inet.h" for Internet Protocol stuff
* Changes regarding "PRNE_RND_WELL512_SEEDLEN"
* Add prne_own_realloc() for objects with multiple array memebers
* Add prne_add_timespec()
|
|
causing undefined behaviour
* Fix bug in proone: loading ns pool from dvault for resolv
* Fix bug in htbt: improper handling of stream in htbt_relay_child()
* Switch back to _POSIX_C_SOURCE=200112L
|
|
* self test is done by proone-pack
* Impl: htbt@proone
* htbt: allocate large buffer first by deault
* htbt: use 0600 for NY_BIN as the image is not an executable
* pack: return error when z_stream is cut short
* proone-pack: impl "nybin" file format
|
|
* Impl: host_cred (base64)
|
|
|
|
|
|
name
* [htbt] Verify ALPN
* [htbt] Bug fixes regarding poll()
* [htbt] Run w/o resolv
|
|
* Add proone-htbthost
* Add prne_iobuf, use it in resolv, htbt
* memzero() -> prne_memzero() now as a function
* Add prne_mbedtls_pth_handle()
* Protocol changes
* Remove prne_unint_*()
* Add src/proone_conf.skel
|
|
* Change PRNE_BUILD_ENTROPY to uint8_t array
* endian.h problem
* Remove "-I." CFLAG added by Automake ()
* Moved endian conversion macros to endian.h
* Moved DNS server config from config.h to resolv.h to reduce compile time
* Refactor resolv_ensure_act_dns_fd() to reduce binary size
|
|
* Move DVault out of executable. Dynamically load it on startup
* Improved testing scheme
* Tidy up prne_*assert* macro series
* Protocol: store host credentials in base64 string. No mask
* Use the lock shm as a shared_global so the stats can persist
* mmap() the executable read-only for later use
|
|
* Use uint8_t array for hardcoded binary data
* Add proone-ipaddr-arr to hardcode DoT servers
* Convert X509 data
* Brought back M68k and ARC archs just in case
* Add CLOCK_REALTIME in prne_mbedtls_entropy_proc_src_f for more entropy
* Remove installation of signal handlers. Use sigwait() instead
* Bugfix: prne_rnd_anum_str() returned null characters
* Add prne_dbgpf() and prne_dbgperr()
* prne_assert(): put errno into a register so it's visible in the core dump
|
|
* Workaround for a bug where getrandom() call block within mbedtls
* Remove use of undocumented autoconf feature: pkg-config
* Remove proone-arch-test
|
|
* gen `PRNE_BUILD_ENTROPY` on configure
* `PRNE_PROG_VER` bin str -> arr str
* added null checked str func `prne_nstreq()`, `prne_nstrlen()`
* preserve `errno` in signal handlers
|
|
|
|
|
|
|
|
* replaced RNG from `rnd` to `mbedtls_ctr_drbg`
* use of `uint_fastN_t` where appropriate
* heartbeat protocol draft
* improved worker scheduling mech
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|