Age | Commit message (Collapse) | Author |
|
|
|
* Add PRNE_HTBT_MSG_ID_NOTIFY for protocol error w/o associated msg_id
* Remove PRNE_HTBT_MSG_ID_MAX(wrong value)
|
|
|
|
|
|
|
|
* Use different strategy for discovering IPv6 hosts on the network
* Multicast IPv6 packet with bogus destination options to get ICMPv6
responses(type 4, code 2)
* Send SYN packets to the hosts responds to the packet to confirm that
they have target ports open
* Add full scope_id support
* Fix potential infinite loop when receiving raw packets
|
|
* Change hostinfo parent_uptime and child_uptime to uint32_t (138 years
is a long time)
|
|
* Add readelf output for symbol size analysis
* Add symbol size parser scripts
* Add templates/symbol-size.fodt for generating hardcopy of
extsymsize.sh output
|
|
* Don't clean up the upload dir after a successful launch
* upload guard
* clean up the upload dir and the lock file only when the lock file
is still present after the shell dies
* suppress stdout and stderr so they don't interfere bne_sh
|
|
* Wrong args to prne_start_bin_rcb_compat() made ba with 1 missing arch
(that of parent) in the next generation of exec. Blame
eea0a9fbbf1aff1eac1f17914d5c116de98e1d93
* proone-pack: add os string to suffix of output files
|
|
* 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
|
|
* proone-htbtclient: mlock() tls password
* Recon
* Send ICMPv6 echo requests to discover IPv6 hosts in the link-local
network
* Check OS code as the implementation is heavily os-dependent
* Fix wrong II_UPDATE values
* Fix sending wrong number of SYN packets
|
|
* 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()
|
|
* Relocate /src/data/proto/txtrec-*.sh to /src
|
|
* 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
|
|
|
|
* Fix htbt hang bug - stagnant data in ssl ctx buffer not flushed
* Add pending_f() abstraction for mbedtls_ssl_check_pending()
* Call read_f() when pending_f() returns true
* Add macro functions: prne_is_nberr() and prne_mbedtls_is_nberr()
* read_f() and write_f() will always set errno to EAGAIN in the event
of MBEDTLS_ERR_SSL_WANT_READ and MBEDTLS_ERR_SSL_WANT_WRITE
* proone-hostinfo: fix crash bug when program init is not successful
* launch.json: Ignore SIGPIPE to hostinfod
|
|
* Fix mbedtls_ssl_read() is not called repeatedly until no data is
returned
* Impl exit code of proone-resolv
* Add test for resolv
|
|
* htbt
* Fix stdout-stderr round-robin sending algo in htbt_relay_child()
* Fix logic error and crash bug in htbt_slv_srv_bin()
* Impl proone-htbtclient runcmd command
* Change signature of prne_htbt_set_cmd()
|
|
* Fix bug where htbt slv ctx loops when the connection stays on. This
bug has not been found earlier because the test connections shutdown
write channel
* Fix bug where errno is not properly set when htbt_main_do_connect()
fails
* Add test for protocol enums
* proone-htbtclient: impl hover command
|
|
* Remove --enable-hostinfod and add --enable-mttools, which enables
hostinfod and htbtclient
* Change PRNE_HTBT_PROTO_PORT so that the macro can be used in another
macro expression(for help message)
* Add prne_mbedtls_perror()
* proone-htbtclient: implement hostinfo command
* proone-htbthost
* Add --hostcred option
* Response with status frame on ENOMEM
* htbt: add prne_htbt_serrc_tostr() and prne_htbt_gen_msgid()
* Add prne_ctoupper(), prne_ctolower(), prne_cisspace(), prne_cisprint()
* The added functions are the locale-independent equivalent of their
POSIX counterparts
* Remove Use of the POSIX functions
* Add test unit
|
|
|
|
|
|
* 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
|
|
* close connection for htbt vector gracefully
* decrease connection timeout and increase socket operation
* fix bug where both `BNE_CONN_TIMEOUT` and `BNE_CONN_OP_TIMEOUT` are
used.
* fix memory leak caused by htbt vector
|
|
* Add debug prints in htbt
* Add `prne_htbt_op_tostr()`
* Add "Lock Matrix" to throttle hover request from CNC TXT REC and NYBIN
race condition
* Fix bug where htbt slave does not reset socket operation timeout timer
when there's multiple frames in the line
* Reserve `PRNE_HTBT_OP_GET_BIN` and `PRNE_HTBT_OP_BIN` for future impl
|
|
* htbt: Call `htbt_cncp_do_probe()` right after start
* hostinfod: impl DB thread
|
|
* Merge /src/data/sql/hi-create.sql and /src/data/sql/hi-view.sql
* Fix false failure when allocation size is zero
* Add "FIXME" comment where it is not clear whether zero size is
normal case.
* Fix typo in /src/proone-bne.c
* "proone-htbthost": always verify ALPN
* Fix crash bug in `prne_htbt_dser_host_info()`
|
|
* Fix typo in htbt.c
|
|
|
|
* Add proper sample host_cred data in src/data/proto-test/hostinfo_rsp
* Fix typo in configure.ac
|
|
* Use EOVERFLOW instead of E2BIG
* Add prne_iobuf_zero()
* Fix format check logic error in prne_htbt_ser_msg_head()
* Add prne_dup_str()
* Add prne_timespec_ms()
|
|
* Remove prne_rnd_anum_str()
|
|
|
|
|
|
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
|
|
|
|
* Reduce timeout values
* Impl telnet vector
* Separate stx_str/stx_out and eot_str/eot_out to skip echo
* Bugfix: wrong BNE_CONN_OP_TIMEOUT timer reset
* vssh: skip account if password auth is not available
* bne_vssh_write_f(): propagate write() EOF
* No EINTR handling
* lssh2_handle()
* prne_mbedtls_pth_handle()
* resolv_ensure_act_dns_fd()
* Add util funcs for telnet login prompt parsing
* prne_transmem()
* prne_memrmem()
* prne_memmem()
|
|
* Lock file acquisition failure is not an error
|
|
|
|
* Refactor bne_do_connect()
* Impl PRNE_BNE_V_HTBT
* Run exec with host cred
|
|
* 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
|
|
|